diff --git a/README.md b/README.md index a3d1390..3694678 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,25 @@ -# mindspore_yolo +## 一、关键demo介绍 +- yolov5_distince.py :基于yolov5社交距离 +- yolov5_flask.py :基于yolov5+flask 网页端实现 +- yolov5_flask_distince.py :基于yolov5+flask+社交距离 网页端实现 +- camera.py :基于yolov5+deepsort(目标跟踪)+Flask Video Streaming实现浏览器打开摄像头 进行目标跟踪 -随着人工智能和大数据的发展,任一方面对自动化工具有着一定的需求,在当下疫情防控期间,使用mindspore来实现yolo模型来进行目标检测及语义分割,对视频或图片都可以进行口罩佩戴检测和行人社交距离检测,来对公共场所的疫情防控来实行自动化管理。 +## 二、安装与使用 + +#### 1、部署环境 +pip install -r requirements.txt + +#### 2、运行(无flask版本) +>python xxx.py --source xxx + +xxx.py :指"一"中代码文件 + +xxx :指视频路径(自备视频文件) + +#### 3、运行(含flask版本) +- 在根目录下的app.py 修改from yolov5_flask import Camera 的包名(根据自己需求,这里采用yolov5_flask.py) + - 在浏览器使用摄像头就用:from camera import Camera +- 运行:flask run +- 浏览器访问:http://127.0.0.1:5000/index即可 + +如果你有好的想法,欢迎发issue,或者参与本开源项目。 diff --git a/VOC/images/train/0000.jpg b/VOC/images/train/0000.jpg new file mode 100644 index 0000000..243c08a Binary files /dev/null and b/VOC/images/train/0000.jpg differ diff --git a/VOC/images/train/00000.jpg b/VOC/images/train/00000.jpg new file mode 100644 index 0000000..f69266b Binary files /dev/null and b/VOC/images/train/00000.jpg differ diff --git a/VOC/images/train/0001.jpg b/VOC/images/train/0001.jpg new file mode 100644 index 0000000..72411c8 Binary files /dev/null and b/VOC/images/train/0001.jpg differ diff --git a/VOC/images/train/00010.jpg b/VOC/images/train/00010.jpg new file mode 100644 index 0000000..63d41b5 Binary files /dev/null and b/VOC/images/train/00010.jpg differ diff --git a/VOC/images/train/0002.jpg b/VOC/images/train/0002.jpg new file mode 100644 index 0000000..4ae1756 Binary files /dev/null and b/VOC/images/train/0002.jpg differ diff --git a/VOC/images/train/00020.jpg b/VOC/images/train/00020.jpg new file mode 100644 index 0000000..1b6629b Binary files /dev/null and b/VOC/images/train/00020.jpg differ diff --git a/VOC/images/train/0003.jpg b/VOC/images/train/0003.jpg new file mode 100644 index 0000000..5aa6b16 Binary files /dev/null and b/VOC/images/train/0003.jpg differ diff --git a/VOC/images/train/00030.jpg b/VOC/images/train/00030.jpg new file mode 100644 index 0000000..4f954c7 Binary files /dev/null and b/VOC/images/train/00030.jpg differ diff --git a/VOC/images/train/00040.jpg b/VOC/images/train/00040.jpg new file mode 100644 index 0000000..5370152 Binary files /dev/null and b/VOC/images/train/00040.jpg differ diff --git a/VOC/images/train/0005.jpg b/VOC/images/train/0005.jpg new file mode 100644 index 0000000..b437b99 Binary files /dev/null and b/VOC/images/train/0005.jpg differ diff --git a/VOC/images/train/00050.jpg b/VOC/images/train/00050.jpg new file mode 100644 index 0000000..5e9db88 Binary files /dev/null and b/VOC/images/train/00050.jpg differ diff --git a/VOC/images/train/0006.jpg b/VOC/images/train/0006.jpg new file mode 100644 index 0000000..443a9ea Binary files /dev/null and b/VOC/images/train/0006.jpg differ diff --git a/VOC/images/train/00060.jpg b/VOC/images/train/00060.jpg new file mode 100644 index 0000000..acc0f3b Binary files /dev/null and b/VOC/images/train/00060.jpg differ diff --git a/VOC/images/train/0007.jpg b/VOC/images/train/0007.jpg new file mode 100644 index 0000000..b1ab1ae Binary files /dev/null and b/VOC/images/train/0007.jpg differ diff --git a/VOC/images/train/00070.jpg b/VOC/images/train/00070.jpg new file mode 100644 index 0000000..037d5b3 Binary files /dev/null and b/VOC/images/train/00070.jpg differ diff --git a/VOC/images/train/0008.jpg b/VOC/images/train/0008.jpg new file mode 100644 index 0000000..4ef9a24 Binary files /dev/null and b/VOC/images/train/0008.jpg differ diff --git a/VOC/images/train/00080.jpg b/VOC/images/train/00080.jpg new file mode 100644 index 0000000..1d31c6c Binary files /dev/null and b/VOC/images/train/00080.jpg differ diff --git a/VOC/images/train/0009.jpg b/VOC/images/train/0009.jpg new file mode 100644 index 0000000..5399bec Binary files /dev/null and b/VOC/images/train/0009.jpg differ diff --git a/VOC/images/train/00090.jpg b/VOC/images/train/00090.jpg new file mode 100644 index 0000000..04c399c Binary files /dev/null and b/VOC/images/train/00090.jpg differ diff --git a/VOC/images/train/00100.jpg b/VOC/images/train/00100.jpg new file mode 100644 index 0000000..bc75ff3 Binary files /dev/null and b/VOC/images/train/00100.jpg differ diff --git a/VOC/images/train/0011.jpg b/VOC/images/train/0011.jpg new file mode 100644 index 0000000..c670355 Binary files /dev/null and b/VOC/images/train/0011.jpg differ diff --git a/VOC/images/train/0012.jpg b/VOC/images/train/0012.jpg new file mode 100644 index 0000000..7269e32 Binary files /dev/null and b/VOC/images/train/0012.jpg differ diff --git a/VOC/images/train/0013.jpg b/VOC/images/train/0013.jpg new file mode 100644 index 0000000..0a32147 Binary files /dev/null and b/VOC/images/train/0013.jpg differ diff --git a/VOC/images/train/0014.jpg b/VOC/images/train/0014.jpg new file mode 100644 index 0000000..54c43a1 Binary files /dev/null and b/VOC/images/train/0014.jpg differ diff --git a/VOC/images/train/0016.jpg b/VOC/images/train/0016.jpg new file mode 100644 index 0000000..eda0e77 Binary files /dev/null and b/VOC/images/train/0016.jpg differ diff --git a/VOC/images/train/0018.jpg b/VOC/images/train/0018.jpg new file mode 100644 index 0000000..ddaa0b4 Binary files /dev/null and b/VOC/images/train/0018.jpg differ diff --git a/VOC/images/train/0019.jpg b/VOC/images/train/0019.jpg new file mode 100644 index 0000000..be41373 Binary files /dev/null and b/VOC/images/train/0019.jpg differ diff --git a/VOC/images/train/0020.jpg b/VOC/images/train/0020.jpg new file mode 100644 index 0000000..7fba53a Binary files /dev/null and b/VOC/images/train/0020.jpg differ diff --git a/VOC/images/train/0021.jpg b/VOC/images/train/0021.jpg new file mode 100644 index 0000000..8869829 Binary files /dev/null and b/VOC/images/train/0021.jpg differ diff --git a/VOC/images/train/0022.jpg b/VOC/images/train/0022.jpg new file mode 100644 index 0000000..4a58ab6 Binary files /dev/null and b/VOC/images/train/0022.jpg differ diff --git a/VOC/images/train/0023.jpg b/VOC/images/train/0023.jpg new file mode 100644 index 0000000..85e2cab Binary files /dev/null and b/VOC/images/train/0023.jpg differ diff --git a/VOC/images/train/0024.jpg b/VOC/images/train/0024.jpg new file mode 100644 index 0000000..95e9b9e Binary files /dev/null and b/VOC/images/train/0024.jpg differ diff --git a/VOC/images/train/0025.jpg b/VOC/images/train/0025.jpg new file mode 100644 index 0000000..1aa6b3b Binary files /dev/null and b/VOC/images/train/0025.jpg differ diff --git a/VOC/images/train/0026.jpg b/VOC/images/train/0026.jpg new file mode 100644 index 0000000..b5f2aef Binary files /dev/null and b/VOC/images/train/0026.jpg differ diff --git a/VOC/images/train/0027.jpg b/VOC/images/train/0027.jpg new file mode 100644 index 0000000..347eebd Binary files /dev/null and b/VOC/images/train/0027.jpg differ diff --git a/VOC/images/train/0028.jpg b/VOC/images/train/0028.jpg new file mode 100644 index 0000000..2a87f74 Binary files /dev/null and b/VOC/images/train/0028.jpg differ diff --git a/VOC/images/train/0029.jpg b/VOC/images/train/0029.jpg new file mode 100644 index 0000000..b81007a Binary files /dev/null and b/VOC/images/train/0029.jpg differ diff --git a/VOC/images/train/0030.jpg b/VOC/images/train/0030.jpg new file mode 100644 index 0000000..f6708c7 Binary files /dev/null and b/VOC/images/train/0030.jpg differ diff --git a/VOC/images/train/0031.jpg b/VOC/images/train/0031.jpg new file mode 100644 index 0000000..16f275e Binary files /dev/null and b/VOC/images/train/0031.jpg differ diff --git a/VOC/images/train/0032.jpg b/VOC/images/train/0032.jpg new file mode 100644 index 0000000..0ed9625 Binary files /dev/null and b/VOC/images/train/0032.jpg differ diff --git a/VOC/images/train/0033.jpg b/VOC/images/train/0033.jpg new file mode 100644 index 0000000..4418aae Binary files /dev/null and b/VOC/images/train/0033.jpg differ diff --git a/VOC/images/train/0034.jpg b/VOC/images/train/0034.jpg new file mode 100644 index 0000000..a36e2aa Binary files /dev/null and b/VOC/images/train/0034.jpg differ diff --git a/VOC/images/train/0035.jpg b/VOC/images/train/0035.jpg new file mode 100644 index 0000000..142d090 Binary files /dev/null and b/VOC/images/train/0035.jpg differ diff --git a/VOC/images/train/0036.jpg b/VOC/images/train/0036.jpg new file mode 100644 index 0000000..c13b55e Binary files /dev/null and b/VOC/images/train/0036.jpg differ diff --git a/VOC/images/train/0037.jpg b/VOC/images/train/0037.jpg new file mode 100644 index 0000000..546fab6 Binary files /dev/null and b/VOC/images/train/0037.jpg differ diff --git a/VOC/images/train/0039.jpg b/VOC/images/train/0039.jpg new file mode 100644 index 0000000..c1d8d10 Binary files /dev/null and b/VOC/images/train/0039.jpg differ diff --git a/VOC/images/train/0040.jpg b/VOC/images/train/0040.jpg new file mode 100644 index 0000000..536c5fb Binary files /dev/null and b/VOC/images/train/0040.jpg differ diff --git a/VOC/images/train/0041.jpg b/VOC/images/train/0041.jpg new file mode 100644 index 0000000..b25288b Binary files /dev/null and b/VOC/images/train/0041.jpg differ diff --git a/VOC/images/train/0042.jpg b/VOC/images/train/0042.jpg new file mode 100644 index 0000000..d0e48f2 Binary files /dev/null and b/VOC/images/train/0042.jpg differ diff --git a/VOC/images/train/0043.jpg b/VOC/images/train/0043.jpg new file mode 100644 index 0000000..7f79f87 Binary files /dev/null and b/VOC/images/train/0043.jpg differ diff --git a/VOC/images/train/0044.jpg b/VOC/images/train/0044.jpg new file mode 100644 index 0000000..531e747 Binary files /dev/null and b/VOC/images/train/0044.jpg differ diff --git a/VOC/images/train/0045.jpg b/VOC/images/train/0045.jpg new file mode 100644 index 0000000..f134438 Binary files /dev/null and b/VOC/images/train/0045.jpg differ diff --git a/VOC/images/train/0046.jpg b/VOC/images/train/0046.jpg new file mode 100644 index 0000000..e184a42 Binary files /dev/null and b/VOC/images/train/0046.jpg differ diff --git a/VOC/images/train/0047.jpg b/VOC/images/train/0047.jpg new file mode 100644 index 0000000..86166f9 Binary files /dev/null and b/VOC/images/train/0047.jpg differ diff --git a/VOC/images/train/0048.jpg b/VOC/images/train/0048.jpg new file mode 100644 index 0000000..015f5b7 Binary files /dev/null and b/VOC/images/train/0048.jpg differ diff --git a/VOC/images/train/0049.jpg b/VOC/images/train/0049.jpg new file mode 100644 index 0000000..f66f50a Binary files /dev/null and b/VOC/images/train/0049.jpg differ diff --git a/VOC/images/train/0050.jpg b/VOC/images/train/0050.jpg new file mode 100644 index 0000000..5d9c606 Binary files /dev/null and b/VOC/images/train/0050.jpg differ diff --git a/VOC/images/train/0051.jpg b/VOC/images/train/0051.jpg new file mode 100644 index 0000000..0c06d66 Binary files /dev/null and b/VOC/images/train/0051.jpg differ diff --git a/VOC/images/train/0052.jpg b/VOC/images/train/0052.jpg new file mode 100644 index 0000000..9f2ec8e Binary files /dev/null and b/VOC/images/train/0052.jpg differ diff --git a/VOC/images/train/00520.jpg b/VOC/images/train/00520.jpg new file mode 100644 index 0000000..0693665 Binary files /dev/null and b/VOC/images/train/00520.jpg differ diff --git a/VOC/images/train/0053.jpg b/VOC/images/train/0053.jpg new file mode 100644 index 0000000..bee3e53 Binary files /dev/null and b/VOC/images/train/0053.jpg differ diff --git a/VOC/images/train/00530.jpg b/VOC/images/train/00530.jpg new file mode 100644 index 0000000..52b2a45 Binary files /dev/null and b/VOC/images/train/00530.jpg differ diff --git a/VOC/images/train/0054.jpg b/VOC/images/train/0054.jpg new file mode 100644 index 0000000..56380df Binary files /dev/null and b/VOC/images/train/0054.jpg differ diff --git a/VOC/images/train/00540.jpg b/VOC/images/train/00540.jpg new file mode 100644 index 0000000..d60897f Binary files /dev/null and b/VOC/images/train/00540.jpg differ diff --git a/VOC/images/train/0055.jpg b/VOC/images/train/0055.jpg new file mode 100644 index 0000000..ac60480 Binary files /dev/null and b/VOC/images/train/0055.jpg differ diff --git a/VOC/images/train/0056.jpg b/VOC/images/train/0056.jpg new file mode 100644 index 0000000..00b7441 Binary files /dev/null and b/VOC/images/train/0056.jpg differ diff --git a/VOC/images/train/00560.jpg b/VOC/images/train/00560.jpg new file mode 100644 index 0000000..c645251 Binary files /dev/null and b/VOC/images/train/00560.jpg differ diff --git a/VOC/images/train/0057.jpg b/VOC/images/train/0057.jpg new file mode 100644 index 0000000..2994ab7 Binary files /dev/null and b/VOC/images/train/0057.jpg differ diff --git a/VOC/images/train/0058.jpg b/VOC/images/train/0058.jpg new file mode 100644 index 0000000..f7d8ab8 Binary files /dev/null and b/VOC/images/train/0058.jpg differ diff --git a/VOC/images/train/00580.jpg b/VOC/images/train/00580.jpg new file mode 100644 index 0000000..98969bf Binary files /dev/null and b/VOC/images/train/00580.jpg differ diff --git a/VOC/images/train/0059.jpg b/VOC/images/train/0059.jpg new file mode 100644 index 0000000..9194f39 Binary files /dev/null and b/VOC/images/train/0059.jpg differ diff --git a/VOC/images/train/00590.jpg b/VOC/images/train/00590.jpg new file mode 100644 index 0000000..1920ef8 Binary files /dev/null and b/VOC/images/train/00590.jpg differ diff --git a/VOC/images/train/0060.jpg b/VOC/images/train/0060.jpg new file mode 100644 index 0000000..1c555ad Binary files /dev/null and b/VOC/images/train/0060.jpg differ diff --git a/VOC/images/train/00600.jpg b/VOC/images/train/00600.jpg new file mode 100644 index 0000000..e0bd454 Binary files /dev/null and b/VOC/images/train/00600.jpg differ diff --git a/VOC/images/train/0061.jpg b/VOC/images/train/0061.jpg new file mode 100644 index 0000000..988a1dc Binary files /dev/null and b/VOC/images/train/0061.jpg differ diff --git a/VOC/images/train/00610.jpg b/VOC/images/train/00610.jpg new file mode 100644 index 0000000..644fe1e Binary files /dev/null and b/VOC/images/train/00610.jpg differ diff --git a/VOC/images/train/0062.jpg b/VOC/images/train/0062.jpg new file mode 100644 index 0000000..5eca27e Binary files /dev/null and b/VOC/images/train/0062.jpg differ diff --git a/VOC/images/train/00620.jpg b/VOC/images/train/00620.jpg new file mode 100644 index 0000000..4fe9ad7 Binary files /dev/null and b/VOC/images/train/00620.jpg differ diff --git a/VOC/images/train/0063.jpg b/VOC/images/train/0063.jpg new file mode 100644 index 0000000..940b1b9 Binary files /dev/null and b/VOC/images/train/0063.jpg differ diff --git a/VOC/images/train/00630.jpg b/VOC/images/train/00630.jpg new file mode 100644 index 0000000..c31e9d2 Binary files /dev/null and b/VOC/images/train/00630.jpg differ diff --git a/VOC/images/train/0064.jpg b/VOC/images/train/0064.jpg new file mode 100644 index 0000000..d45448c Binary files /dev/null and b/VOC/images/train/0064.jpg differ diff --git a/VOC/images/train/00640.jpg b/VOC/images/train/00640.jpg new file mode 100644 index 0000000..0e33506 Binary files /dev/null and b/VOC/images/train/00640.jpg differ diff --git a/VOC/images/train/0065.jpg b/VOC/images/train/0065.jpg new file mode 100644 index 0000000..26e44b0 Binary files /dev/null and b/VOC/images/train/0065.jpg differ diff --git a/VOC/images/train/00650.jpg b/VOC/images/train/00650.jpg new file mode 100644 index 0000000..90fea79 Binary files /dev/null and b/VOC/images/train/00650.jpg differ diff --git a/VOC/images/train/0066.jpg b/VOC/images/train/0066.jpg new file mode 100644 index 0000000..bcf0437 Binary files /dev/null and b/VOC/images/train/0066.jpg differ diff --git a/VOC/images/train/0067.jpg b/VOC/images/train/0067.jpg new file mode 100644 index 0000000..23c607b Binary files /dev/null and b/VOC/images/train/0067.jpg differ diff --git a/VOC/images/train/00670.jpg b/VOC/images/train/00670.jpg new file mode 100644 index 0000000..04dfccf Binary files /dev/null and b/VOC/images/train/00670.jpg differ diff --git a/VOC/images/train/0068.jpg b/VOC/images/train/0068.jpg new file mode 100644 index 0000000..e708035 Binary files /dev/null and b/VOC/images/train/0068.jpg differ diff --git a/VOC/images/train/00680.jpg b/VOC/images/train/00680.jpg new file mode 100644 index 0000000..e72cefe Binary files /dev/null and b/VOC/images/train/00680.jpg differ diff --git a/VOC/images/train/0070.jpg b/VOC/images/train/0070.jpg new file mode 100644 index 0000000..5b71195 Binary files /dev/null and b/VOC/images/train/0070.jpg differ diff --git a/VOC/images/train/00700.jpg b/VOC/images/train/00700.jpg new file mode 100644 index 0000000..75f62f4 Binary files /dev/null and b/VOC/images/train/00700.jpg differ diff --git a/VOC/images/train/0071.jpg b/VOC/images/train/0071.jpg new file mode 100644 index 0000000..6cd291c Binary files /dev/null and b/VOC/images/train/0071.jpg differ diff --git a/VOC/images/train/00710.jpg b/VOC/images/train/00710.jpg new file mode 100644 index 0000000..817052d Binary files /dev/null and b/VOC/images/train/00710.jpg differ diff --git a/VOC/images/train/0072.jpg b/VOC/images/train/0072.jpg new file mode 100644 index 0000000..af7c569 Binary files /dev/null and b/VOC/images/train/0072.jpg differ diff --git a/VOC/images/train/00720.jpg b/VOC/images/train/00720.jpg new file mode 100644 index 0000000..c5d8411 Binary files /dev/null and b/VOC/images/train/00720.jpg differ diff --git a/VOC/images/train/0073.jpg b/VOC/images/train/0073.jpg new file mode 100644 index 0000000..1d651b7 Binary files /dev/null and b/VOC/images/train/0073.jpg differ diff --git a/VOC/images/train/00730.jpg b/VOC/images/train/00730.jpg new file mode 100644 index 0000000..e1b298a Binary files /dev/null and b/VOC/images/train/00730.jpg differ diff --git a/VOC/images/train/0074.jpg b/VOC/images/train/0074.jpg new file mode 100644 index 0000000..f9b6cef Binary files /dev/null and b/VOC/images/train/0074.jpg differ diff --git a/VOC/images/train/00740.jpg b/VOC/images/train/00740.jpg new file mode 100644 index 0000000..36d3303 Binary files /dev/null and b/VOC/images/train/00740.jpg differ diff --git a/VOC/images/train/0075.jpg b/VOC/images/train/0075.jpg new file mode 100644 index 0000000..5066a66 Binary files /dev/null and b/VOC/images/train/0075.jpg differ diff --git a/VOC/images/train/00750.jpg b/VOC/images/train/00750.jpg new file mode 100644 index 0000000..f934100 Binary files /dev/null and b/VOC/images/train/00750.jpg differ diff --git a/VOC/images/train/0076.jpg b/VOC/images/train/0076.jpg new file mode 100644 index 0000000..e532fce Binary files /dev/null and b/VOC/images/train/0076.jpg differ diff --git a/VOC/images/train/00760.jpg b/VOC/images/train/00760.jpg new file mode 100644 index 0000000..3bfd84e Binary files /dev/null and b/VOC/images/train/00760.jpg differ diff --git a/VOC/images/train/0077.jpg b/VOC/images/train/0077.jpg new file mode 100644 index 0000000..8fec297 Binary files /dev/null and b/VOC/images/train/0077.jpg differ diff --git a/VOC/images/train/00770.jpg b/VOC/images/train/00770.jpg new file mode 100644 index 0000000..c1b0596 Binary files /dev/null and b/VOC/images/train/00770.jpg differ diff --git a/VOC/images/train/0078.jpg b/VOC/images/train/0078.jpg new file mode 100644 index 0000000..b2ea5be Binary files /dev/null and b/VOC/images/train/0078.jpg differ diff --git a/VOC/images/train/0079.jpg b/VOC/images/train/0079.jpg new file mode 100644 index 0000000..4566085 Binary files /dev/null and b/VOC/images/train/0079.jpg differ diff --git a/VOC/images/train/00790.jpg b/VOC/images/train/00790.jpg new file mode 100644 index 0000000..6fa4308 Binary files /dev/null and b/VOC/images/train/00790.jpg differ diff --git a/VOC/images/train/0080.jpg b/VOC/images/train/0080.jpg new file mode 100644 index 0000000..793adde Binary files /dev/null and b/VOC/images/train/0080.jpg differ diff --git a/VOC/images/train/00800.jpg b/VOC/images/train/00800.jpg new file mode 100644 index 0000000..5de3fdd Binary files /dev/null and b/VOC/images/train/00800.jpg differ diff --git a/VOC/images/train/0081.jpg b/VOC/images/train/0081.jpg new file mode 100644 index 0000000..deea090 Binary files /dev/null and b/VOC/images/train/0081.jpg differ diff --git a/VOC/images/train/00810.jpg b/VOC/images/train/00810.jpg new file mode 100644 index 0000000..0ee460f Binary files /dev/null and b/VOC/images/train/00810.jpg differ diff --git a/VOC/images/train/0082.jpg b/VOC/images/train/0082.jpg new file mode 100644 index 0000000..4a7138a Binary files /dev/null and b/VOC/images/train/0082.jpg differ diff --git a/VOC/images/train/00820.jpg b/VOC/images/train/00820.jpg new file mode 100644 index 0000000..e66c2ec Binary files /dev/null and b/VOC/images/train/00820.jpg differ diff --git a/VOC/images/train/0083.jpg b/VOC/images/train/0083.jpg new file mode 100644 index 0000000..da3cbab Binary files /dev/null and b/VOC/images/train/0083.jpg differ diff --git a/VOC/images/train/00830.jpg b/VOC/images/train/00830.jpg new file mode 100644 index 0000000..5f0fd33 Binary files /dev/null and b/VOC/images/train/00830.jpg differ diff --git a/VOC/images/train/0084.jpg b/VOC/images/train/0084.jpg new file mode 100644 index 0000000..c92cd21 Binary files /dev/null and b/VOC/images/train/0084.jpg differ diff --git a/VOC/images/train/00840.jpg b/VOC/images/train/00840.jpg new file mode 100644 index 0000000..52c57d0 Binary files /dev/null and b/VOC/images/train/00840.jpg differ diff --git a/VOC/images/train/0085.jpg b/VOC/images/train/0085.jpg new file mode 100644 index 0000000..eda2c62 Binary files /dev/null and b/VOC/images/train/0085.jpg differ diff --git a/VOC/images/train/00850.jpg b/VOC/images/train/00850.jpg new file mode 100644 index 0000000..2831ebd Binary files /dev/null and b/VOC/images/train/00850.jpg differ diff --git a/VOC/images/train/0086.jpg b/VOC/images/train/0086.jpg new file mode 100644 index 0000000..a7836b7 Binary files /dev/null and b/VOC/images/train/0086.jpg differ diff --git a/VOC/images/train/00860.jpg b/VOC/images/train/00860.jpg new file mode 100644 index 0000000..6f83680 Binary files /dev/null and b/VOC/images/train/00860.jpg differ diff --git a/VOC/images/train/0087.jpg b/VOC/images/train/0087.jpg new file mode 100644 index 0000000..3fa5637 Binary files /dev/null and b/VOC/images/train/0087.jpg differ diff --git a/VOC/images/train/00870.jpg b/VOC/images/train/00870.jpg new file mode 100644 index 0000000..311b744 Binary files /dev/null and b/VOC/images/train/00870.jpg differ diff --git a/VOC/images/train/0088.jpg b/VOC/images/train/0088.jpg new file mode 100644 index 0000000..a4f9a04 Binary files /dev/null and b/VOC/images/train/0088.jpg differ diff --git a/VOC/images/train/00880.jpg b/VOC/images/train/00880.jpg new file mode 100644 index 0000000..8bd996e Binary files /dev/null and b/VOC/images/train/00880.jpg differ diff --git a/VOC/images/train/0089.jpg b/VOC/images/train/0089.jpg new file mode 100644 index 0000000..255670a Binary files /dev/null and b/VOC/images/train/0089.jpg differ diff --git a/VOC/images/train/00890.jpg b/VOC/images/train/00890.jpg new file mode 100644 index 0000000..0ada40a Binary files /dev/null and b/VOC/images/train/00890.jpg differ diff --git a/VOC/images/train/0090.jpg b/VOC/images/train/0090.jpg new file mode 100644 index 0000000..68ac20a Binary files /dev/null and b/VOC/images/train/0090.jpg differ diff --git a/VOC/images/train/00900.jpg b/VOC/images/train/00900.jpg new file mode 100644 index 0000000..b519a16 Binary files /dev/null and b/VOC/images/train/00900.jpg differ diff --git a/VOC/images/train/0091.jpg b/VOC/images/train/0091.jpg new file mode 100644 index 0000000..4d9a071 Binary files /dev/null and b/VOC/images/train/0091.jpg differ diff --git a/VOC/images/train/00910.jpg b/VOC/images/train/00910.jpg new file mode 100644 index 0000000..a13b623 Binary files /dev/null and b/VOC/images/train/00910.jpg differ diff --git a/VOC/images/train/0092.jpg b/VOC/images/train/0092.jpg new file mode 100644 index 0000000..1f23833 Binary files /dev/null and b/VOC/images/train/0092.jpg differ diff --git a/VOC/images/train/00920.jpg b/VOC/images/train/00920.jpg new file mode 100644 index 0000000..9819dd4 Binary files /dev/null and b/VOC/images/train/00920.jpg differ diff --git a/VOC/images/train/00930.jpg b/VOC/images/train/00930.jpg new file mode 100644 index 0000000..22c8527 Binary files /dev/null and b/VOC/images/train/00930.jpg differ diff --git a/VOC/images/train/0094.jpg b/VOC/images/train/0094.jpg new file mode 100644 index 0000000..df0b8c3 Binary files /dev/null and b/VOC/images/train/0094.jpg differ diff --git a/VOC/images/train/0095.jpg b/VOC/images/train/0095.jpg new file mode 100644 index 0000000..4606274 Binary files /dev/null and b/VOC/images/train/0095.jpg differ diff --git a/VOC/images/train/00950.jpg b/VOC/images/train/00950.jpg new file mode 100644 index 0000000..8b7798a Binary files /dev/null and b/VOC/images/train/00950.jpg differ diff --git a/VOC/images/train/0096.jpg b/VOC/images/train/0096.jpg new file mode 100644 index 0000000..781ad84 Binary files /dev/null and b/VOC/images/train/0096.jpg differ diff --git a/VOC/images/train/0097.jpg b/VOC/images/train/0097.jpg new file mode 100644 index 0000000..b81e5fa Binary files /dev/null and b/VOC/images/train/0097.jpg differ diff --git a/VOC/images/train/00970.jpg b/VOC/images/train/00970.jpg new file mode 100644 index 0000000..0f59259 Binary files /dev/null and b/VOC/images/train/00970.jpg differ diff --git a/VOC/images/train/0098.jpg b/VOC/images/train/0098.jpg new file mode 100644 index 0000000..24502d4 Binary files /dev/null and b/VOC/images/train/0098.jpg differ diff --git a/VOC/images/train/00980.jpg b/VOC/images/train/00980.jpg new file mode 100644 index 0000000..37cdffc Binary files /dev/null and b/VOC/images/train/00980.jpg differ diff --git a/VOC/images/train/0099.jpg b/VOC/images/train/0099.jpg new file mode 100644 index 0000000..03a62bc Binary files /dev/null and b/VOC/images/train/0099.jpg differ diff --git a/VOC/images/train/0100.jpg b/VOC/images/train/0100.jpg new file mode 100644 index 0000000..d78e84a Binary files /dev/null and b/VOC/images/train/0100.jpg differ diff --git a/VOC/images/train/01000.jpg b/VOC/images/train/01000.jpg new file mode 100644 index 0000000..fcdc58c Binary files /dev/null and b/VOC/images/train/01000.jpg differ diff --git a/VOC/images/train/0101.jpg b/VOC/images/train/0101.jpg new file mode 100644 index 0000000..60f1cca Binary files /dev/null and b/VOC/images/train/0101.jpg differ diff --git a/VOC/images/train/01010.jpg b/VOC/images/train/01010.jpg new file mode 100644 index 0000000..4fe4520 Binary files /dev/null and b/VOC/images/train/01010.jpg differ diff --git a/VOC/images/train/01020.jpg b/VOC/images/train/01020.jpg new file mode 100644 index 0000000..07b207a Binary files /dev/null and b/VOC/images/train/01020.jpg differ diff --git a/VOC/images/train/01030.jpg b/VOC/images/train/01030.jpg new file mode 100644 index 0000000..945127d Binary files /dev/null and b/VOC/images/train/01030.jpg differ diff --git a/VOC/images/train/01040.jpg b/VOC/images/train/01040.jpg new file mode 100644 index 0000000..67148d0 Binary files /dev/null and b/VOC/images/train/01040.jpg differ diff --git a/VOC/images/train/01050.jpg b/VOC/images/train/01050.jpg new file mode 100644 index 0000000..1ec686f Binary files /dev/null and b/VOC/images/train/01050.jpg differ diff --git a/VOC/images/train/01060.jpg b/VOC/images/train/01060.jpg new file mode 100644 index 0000000..cc04ae7 Binary files /dev/null and b/VOC/images/train/01060.jpg differ diff --git a/VOC/images/train/01080.jpg b/VOC/images/train/01080.jpg new file mode 100644 index 0000000..24ada68 Binary files /dev/null and b/VOC/images/train/01080.jpg differ diff --git a/VOC/images/train/01090.jpg b/VOC/images/train/01090.jpg new file mode 100644 index 0000000..dc3eba3 Binary files /dev/null and b/VOC/images/train/01090.jpg differ diff --git a/VOC/images/train/01100.jpg b/VOC/images/train/01100.jpg new file mode 100644 index 0000000..d5ca6ce Binary files /dev/null and b/VOC/images/train/01100.jpg differ diff --git a/VOC/images/train/01110.jpg b/VOC/images/train/01110.jpg new file mode 100644 index 0000000..9922bdc Binary files /dev/null and b/VOC/images/train/01110.jpg differ diff --git a/VOC/images/train/01120.jpg b/VOC/images/train/01120.jpg new file mode 100644 index 0000000..bc1b451 Binary files /dev/null and b/VOC/images/train/01120.jpg differ diff --git a/VOC/images/train/01130.jpg b/VOC/images/train/01130.jpg new file mode 100644 index 0000000..e520a2c Binary files /dev/null and b/VOC/images/train/01130.jpg differ diff --git a/VOC/images/train/01140.jpg b/VOC/images/train/01140.jpg new file mode 100644 index 0000000..98ab2e2 Binary files /dev/null and b/VOC/images/train/01140.jpg differ diff --git a/VOC/images/train/01150.jpg b/VOC/images/train/01150.jpg new file mode 100644 index 0000000..0d1bef6 Binary files /dev/null and b/VOC/images/train/01150.jpg differ diff --git a/VOC/images/train/01170.jpg b/VOC/images/train/01170.jpg new file mode 100644 index 0000000..a9f277c Binary files /dev/null and b/VOC/images/train/01170.jpg differ diff --git a/VOC/images/train/01180.jpg b/VOC/images/train/01180.jpg new file mode 100644 index 0000000..7631151 Binary files /dev/null and b/VOC/images/train/01180.jpg differ diff --git a/VOC/images/train/01190.jpg b/VOC/images/train/01190.jpg new file mode 100644 index 0000000..dd270c2 Binary files /dev/null and b/VOC/images/train/01190.jpg differ diff --git a/VOC/images/train/01200.jpg b/VOC/images/train/01200.jpg new file mode 100644 index 0000000..ea83d8d Binary files /dev/null and b/VOC/images/train/01200.jpg differ diff --git a/VOC/images/train/01210.jpg b/VOC/images/train/01210.jpg new file mode 100644 index 0000000..1903275 Binary files /dev/null and b/VOC/images/train/01210.jpg differ diff --git a/VOC/images/train/01220.jpg b/VOC/images/train/01220.jpg new file mode 100644 index 0000000..37f0af9 Binary files /dev/null and b/VOC/images/train/01220.jpg differ diff --git a/VOC/images/train/01230.jpg b/VOC/images/train/01230.jpg new file mode 100644 index 0000000..1d582e2 Binary files /dev/null and b/VOC/images/train/01230.jpg differ diff --git a/VOC/images/train/01240.jpg b/VOC/images/train/01240.jpg new file mode 100644 index 0000000..d285279 Binary files /dev/null and b/VOC/images/train/01240.jpg differ diff --git a/VOC/images/train/01250.jpg b/VOC/images/train/01250.jpg new file mode 100644 index 0000000..f641a5e Binary files /dev/null and b/VOC/images/train/01250.jpg differ diff --git a/VOC/images/train/01260.jpg b/VOC/images/train/01260.jpg new file mode 100644 index 0000000..730f153 Binary files /dev/null and b/VOC/images/train/01260.jpg differ diff --git a/VOC/images/train/01270.jpg b/VOC/images/train/01270.jpg new file mode 100644 index 0000000..a222ebf Binary files /dev/null and b/VOC/images/train/01270.jpg differ diff --git a/VOC/images/train/01280.jpg b/VOC/images/train/01280.jpg new file mode 100644 index 0000000..32ae86c Binary files /dev/null and b/VOC/images/train/01280.jpg differ diff --git a/VOC/images/train/01290.jpg b/VOC/images/train/01290.jpg new file mode 100644 index 0000000..ff59195 Binary files /dev/null and b/VOC/images/train/01290.jpg differ diff --git a/VOC/images/train/01300.jpg b/VOC/images/train/01300.jpg new file mode 100644 index 0000000..c84042c Binary files /dev/null and b/VOC/images/train/01300.jpg differ diff --git a/VOC/images/train/01310.jpg b/VOC/images/train/01310.jpg new file mode 100644 index 0000000..a692213 Binary files /dev/null and b/VOC/images/train/01310.jpg differ diff --git a/VOC/images/train/01320.jpg b/VOC/images/train/01320.jpg new file mode 100644 index 0000000..0342725 Binary files /dev/null and b/VOC/images/train/01320.jpg differ diff --git a/VOC/images/train/01330.jpg b/VOC/images/train/01330.jpg new file mode 100644 index 0000000..ed5a59c Binary files /dev/null and b/VOC/images/train/01330.jpg differ diff --git a/VOC/images/train/01340.jpg b/VOC/images/train/01340.jpg new file mode 100644 index 0000000..016dcb1 Binary files /dev/null and b/VOC/images/train/01340.jpg differ diff --git a/VOC/images/train/01350.jpg b/VOC/images/train/01350.jpg new file mode 100644 index 0000000..f2c2fe1 Binary files /dev/null and b/VOC/images/train/01350.jpg differ diff --git a/VOC/images/train/01370.jpg b/VOC/images/train/01370.jpg new file mode 100644 index 0000000..030ab40 Binary files /dev/null and b/VOC/images/train/01370.jpg differ diff --git a/VOC/images/train/01380.jpg b/VOC/images/train/01380.jpg new file mode 100644 index 0000000..e7ac2f6 Binary files /dev/null and b/VOC/images/train/01380.jpg differ diff --git a/VOC/images/train/01390.jpg b/VOC/images/train/01390.jpg new file mode 100644 index 0000000..4419e8c Binary files /dev/null and b/VOC/images/train/01390.jpg differ diff --git a/VOC/images/train/01410.jpg b/VOC/images/train/01410.jpg new file mode 100644 index 0000000..a89997b Binary files /dev/null and b/VOC/images/train/01410.jpg differ diff --git a/VOC/images/train/01420.jpg b/VOC/images/train/01420.jpg new file mode 100644 index 0000000..c48b979 Binary files /dev/null and b/VOC/images/train/01420.jpg differ diff --git a/VOC/images/train/01430.jpg b/VOC/images/train/01430.jpg new file mode 100644 index 0000000..76b831c Binary files /dev/null and b/VOC/images/train/01430.jpg differ diff --git a/VOC/images/train/01440.jpg b/VOC/images/train/01440.jpg new file mode 100644 index 0000000..bc2b7e8 Binary files /dev/null and b/VOC/images/train/01440.jpg differ diff --git a/VOC/images/train/01460.jpg b/VOC/images/train/01460.jpg new file mode 100644 index 0000000..2eba945 Binary files /dev/null and b/VOC/images/train/01460.jpg differ diff --git a/VOC/images/train/01470.jpg b/VOC/images/train/01470.jpg new file mode 100644 index 0000000..0d071ec Binary files /dev/null and b/VOC/images/train/01470.jpg differ diff --git a/VOC/images/train/01480.jpg b/VOC/images/train/01480.jpg new file mode 100644 index 0000000..658edfa Binary files /dev/null and b/VOC/images/train/01480.jpg differ diff --git a/VOC/images/train/01490.jpg b/VOC/images/train/01490.jpg new file mode 100644 index 0000000..f94cd25 Binary files /dev/null and b/VOC/images/train/01490.jpg differ diff --git a/VOC/images/train/01500.jpg b/VOC/images/train/01500.jpg new file mode 100644 index 0000000..5c46857 Binary files /dev/null and b/VOC/images/train/01500.jpg differ diff --git a/VOC/images/train/01510.jpg b/VOC/images/train/01510.jpg new file mode 100644 index 0000000..2d8e747 Binary files /dev/null and b/VOC/images/train/01510.jpg differ diff --git a/VOC/images/train/01520.jpg b/VOC/images/train/01520.jpg new file mode 100644 index 0000000..77da8b4 Binary files /dev/null and b/VOC/images/train/01520.jpg differ diff --git a/VOC/images/train/01530.jpg b/VOC/images/train/01530.jpg new file mode 100644 index 0000000..8f0fd47 Binary files /dev/null and b/VOC/images/train/01530.jpg differ diff --git a/VOC/images/train/01540.jpg b/VOC/images/train/01540.jpg new file mode 100644 index 0000000..9560c77 Binary files /dev/null and b/VOC/images/train/01540.jpg differ diff --git a/VOC/images/train/01550.jpg b/VOC/images/train/01550.jpg new file mode 100644 index 0000000..146b2a2 Binary files /dev/null and b/VOC/images/train/01550.jpg differ diff --git a/VOC/images/train/01560.jpg b/VOC/images/train/01560.jpg new file mode 100644 index 0000000..ad6de5c Binary files /dev/null and b/VOC/images/train/01560.jpg differ diff --git a/VOC/images/train/01570.jpg b/VOC/images/train/01570.jpg new file mode 100644 index 0000000..0caddae Binary files /dev/null and b/VOC/images/train/01570.jpg differ diff --git a/VOC/images/train/01580.jpg b/VOC/images/train/01580.jpg new file mode 100644 index 0000000..3906ed7 Binary files /dev/null and b/VOC/images/train/01580.jpg differ diff --git a/VOC/images/train/01590.jpg b/VOC/images/train/01590.jpg new file mode 100644 index 0000000..cd97e8b Binary files /dev/null and b/VOC/images/train/01590.jpg differ diff --git a/VOC/images/train/01600.jpg b/VOC/images/train/01600.jpg new file mode 100644 index 0000000..f618f22 Binary files /dev/null and b/VOC/images/train/01600.jpg differ diff --git a/VOC/images/train/01620.jpg b/VOC/images/train/01620.jpg new file mode 100644 index 0000000..342807b Binary files /dev/null and b/VOC/images/train/01620.jpg differ diff --git a/VOC/images/train/01630.jpg b/VOC/images/train/01630.jpg new file mode 100644 index 0000000..164d617 Binary files /dev/null and b/VOC/images/train/01630.jpg differ diff --git a/VOC/images/train/01640.jpg b/VOC/images/train/01640.jpg new file mode 100644 index 0000000..4f67a22 Binary files /dev/null and b/VOC/images/train/01640.jpg differ diff --git a/VOC/images/train/01650.jpg b/VOC/images/train/01650.jpg new file mode 100644 index 0000000..b5fd2c8 Binary files /dev/null and b/VOC/images/train/01650.jpg differ diff --git a/VOC/images/train/01660.jpg b/VOC/images/train/01660.jpg new file mode 100644 index 0000000..5a75558 Binary files /dev/null and b/VOC/images/train/01660.jpg differ diff --git a/VOC/images/train/01670.jpg b/VOC/images/train/01670.jpg new file mode 100644 index 0000000..c6f8cd2 Binary files /dev/null and b/VOC/images/train/01670.jpg differ diff --git a/VOC/images/train/01690.jpg b/VOC/images/train/01690.jpg new file mode 100644 index 0000000..6c47e0d Binary files /dev/null and b/VOC/images/train/01690.jpg differ diff --git a/VOC/images/train/01710.jpg b/VOC/images/train/01710.jpg new file mode 100644 index 0000000..f1cbc41 Binary files /dev/null and b/VOC/images/train/01710.jpg differ diff --git a/VOC/images/train/01720.jpg b/VOC/images/train/01720.jpg new file mode 100644 index 0000000..c6532ea Binary files /dev/null and b/VOC/images/train/01720.jpg differ diff --git a/VOC/images/train/01730.jpg b/VOC/images/train/01730.jpg new file mode 100644 index 0000000..a179931 Binary files /dev/null and b/VOC/images/train/01730.jpg differ diff --git a/VOC/images/train/01750.jpg b/VOC/images/train/01750.jpg new file mode 100644 index 0000000..7953e09 Binary files /dev/null and b/VOC/images/train/01750.jpg differ diff --git a/VOC/images/train/01780.jpg b/VOC/images/train/01780.jpg new file mode 100644 index 0000000..c0ae9a1 Binary files /dev/null and b/VOC/images/train/01780.jpg differ diff --git a/VOC/images/train/01790.jpg b/VOC/images/train/01790.jpg new file mode 100644 index 0000000..af8bfa2 Binary files /dev/null and b/VOC/images/train/01790.jpg differ diff --git a/VOC/images/train/01800.jpg b/VOC/images/train/01800.jpg new file mode 100644 index 0000000..04974a6 Binary files /dev/null and b/VOC/images/train/01800.jpg differ diff --git a/VOC/images/train/01810.jpg b/VOC/images/train/01810.jpg new file mode 100644 index 0000000..63f7959 Binary files /dev/null and b/VOC/images/train/01810.jpg differ diff --git a/VOC/images/train/01820.jpg b/VOC/images/train/01820.jpg new file mode 100644 index 0000000..c7761d9 Binary files /dev/null and b/VOC/images/train/01820.jpg differ diff --git a/VOC/images/train/01830.jpg b/VOC/images/train/01830.jpg new file mode 100644 index 0000000..e6fe516 Binary files /dev/null and b/VOC/images/train/01830.jpg differ diff --git a/VOC/images/train/01840.jpg b/VOC/images/train/01840.jpg new file mode 100644 index 0000000..07fe2cb Binary files /dev/null and b/VOC/images/train/01840.jpg differ diff --git a/VOC/images/train/01850.jpg b/VOC/images/train/01850.jpg new file mode 100644 index 0000000..db9cab9 Binary files /dev/null and b/VOC/images/train/01850.jpg differ diff --git a/VOC/images/train/01860.jpg b/VOC/images/train/01860.jpg new file mode 100644 index 0000000..877360b Binary files /dev/null and b/VOC/images/train/01860.jpg differ diff --git a/VOC/images/train/01870.jpg b/VOC/images/train/01870.jpg new file mode 100644 index 0000000..0a8d2a0 Binary files /dev/null and b/VOC/images/train/01870.jpg differ diff --git a/VOC/images/train/01880.jpg b/VOC/images/train/01880.jpg new file mode 100644 index 0000000..d50bffd Binary files /dev/null and b/VOC/images/train/01880.jpg differ diff --git a/VOC/images/train/01890.jpg b/VOC/images/train/01890.jpg new file mode 100644 index 0000000..c8bcb42 Binary files /dev/null and b/VOC/images/train/01890.jpg differ diff --git a/VOC/images/train/01900.jpg b/VOC/images/train/01900.jpg new file mode 100644 index 0000000..fc0d150 Binary files /dev/null and b/VOC/images/train/01900.jpg differ diff --git a/VOC/images/train/01910.jpg b/VOC/images/train/01910.jpg new file mode 100644 index 0000000..4cef5f7 Binary files /dev/null and b/VOC/images/train/01910.jpg differ diff --git a/VOC/images/train/01930.jpg b/VOC/images/train/01930.jpg new file mode 100644 index 0000000..553823d Binary files /dev/null and b/VOC/images/train/01930.jpg differ diff --git a/VOC/images/train/01940.jpg b/VOC/images/train/01940.jpg new file mode 100644 index 0000000..6f3560c Binary files /dev/null and b/VOC/images/train/01940.jpg differ diff --git a/VOC/images/train/01950.jpg b/VOC/images/train/01950.jpg new file mode 100644 index 0000000..e95b4a8 Binary files /dev/null and b/VOC/images/train/01950.jpg differ diff --git a/VOC/images/train/01960.jpg b/VOC/images/train/01960.jpg new file mode 100644 index 0000000..f7fd385 Binary files /dev/null and b/VOC/images/train/01960.jpg differ diff --git a/VOC/images/train/01970.jpg b/VOC/images/train/01970.jpg new file mode 100644 index 0000000..ac51033 Binary files /dev/null and b/VOC/images/train/01970.jpg differ diff --git a/VOC/images/train/01980.jpg b/VOC/images/train/01980.jpg new file mode 100644 index 0000000..7ae5349 Binary files /dev/null and b/VOC/images/train/01980.jpg differ diff --git a/VOC/images/train/02000.jpg b/VOC/images/train/02000.jpg new file mode 100644 index 0000000..e25f600 Binary files /dev/null and b/VOC/images/train/02000.jpg differ diff --git a/VOC/images/train/02010.jpg b/VOC/images/train/02010.jpg new file mode 100644 index 0000000..9fdc17d Binary files /dev/null and b/VOC/images/train/02010.jpg differ diff --git a/VOC/images/train/02020.jpg b/VOC/images/train/02020.jpg new file mode 100644 index 0000000..999f62a Binary files /dev/null and b/VOC/images/train/02020.jpg differ diff --git a/VOC/images/train/02030.jpg b/VOC/images/train/02030.jpg new file mode 100644 index 0000000..08dd522 Binary files /dev/null and b/VOC/images/train/02030.jpg differ diff --git a/VOC/images/train/02040.jpg b/VOC/images/train/02040.jpg new file mode 100644 index 0000000..8a7df18 Binary files /dev/null and b/VOC/images/train/02040.jpg differ diff --git a/VOC/images/train/02050.jpg b/VOC/images/train/02050.jpg new file mode 100644 index 0000000..5f77734 Binary files /dev/null and b/VOC/images/train/02050.jpg differ diff --git a/VOC/images/train/02060.jpg b/VOC/images/train/02060.jpg new file mode 100644 index 0000000..59a3b8f Binary files /dev/null and b/VOC/images/train/02060.jpg differ diff --git a/VOC/images/train/02070.jpg b/VOC/images/train/02070.jpg new file mode 100644 index 0000000..badcfc3 Binary files /dev/null and b/VOC/images/train/02070.jpg differ diff --git a/VOC/images/train/02080.jpg b/VOC/images/train/02080.jpg new file mode 100644 index 0000000..023aa61 Binary files /dev/null and b/VOC/images/train/02080.jpg differ diff --git a/VOC/images/train/02090.jpg b/VOC/images/train/02090.jpg new file mode 100644 index 0000000..fa38225 Binary files /dev/null and b/VOC/images/train/02090.jpg differ diff --git a/VOC/images/train/02100.jpg b/VOC/images/train/02100.jpg new file mode 100644 index 0000000..0f20009 Binary files /dev/null and b/VOC/images/train/02100.jpg differ diff --git a/VOC/images/train/02110.jpg b/VOC/images/train/02110.jpg new file mode 100644 index 0000000..7b1d51f Binary files /dev/null and b/VOC/images/train/02110.jpg differ diff --git a/VOC/images/train/02120.jpg b/VOC/images/train/02120.jpg new file mode 100644 index 0000000..619551d Binary files /dev/null and b/VOC/images/train/02120.jpg differ diff --git a/VOC/images/train/02140.jpg b/VOC/images/train/02140.jpg new file mode 100644 index 0000000..cdaccaf Binary files /dev/null and b/VOC/images/train/02140.jpg differ diff --git a/VOC/images/train/02150.jpg b/VOC/images/train/02150.jpg new file mode 100644 index 0000000..7bee34e Binary files /dev/null and b/VOC/images/train/02150.jpg differ diff --git a/VOC/images/train/02160.jpg b/VOC/images/train/02160.jpg new file mode 100644 index 0000000..b209353 Binary files /dev/null and b/VOC/images/train/02160.jpg differ diff --git a/VOC/images/train/02170.jpg b/VOC/images/train/02170.jpg new file mode 100644 index 0000000..c538808 Binary files /dev/null and b/VOC/images/train/02170.jpg differ diff --git a/VOC/images/train/02180.jpg b/VOC/images/train/02180.jpg new file mode 100644 index 0000000..c18ec97 Binary files /dev/null and b/VOC/images/train/02180.jpg differ diff --git a/VOC/images/train/02190.jpg b/VOC/images/train/02190.jpg new file mode 100644 index 0000000..138d113 Binary files /dev/null and b/VOC/images/train/02190.jpg differ diff --git a/VOC/images/train/02200.jpg b/VOC/images/train/02200.jpg new file mode 100644 index 0000000..f9a7aae Binary files /dev/null and b/VOC/images/train/02200.jpg differ diff --git a/VOC/images/train/02210.jpg b/VOC/images/train/02210.jpg new file mode 100644 index 0000000..b14339c Binary files /dev/null and b/VOC/images/train/02210.jpg differ diff --git a/VOC/images/train/02220.jpg b/VOC/images/train/02220.jpg new file mode 100644 index 0000000..ddb50f2 Binary files /dev/null and b/VOC/images/train/02220.jpg differ diff --git a/VOC/images/train/02230.jpg b/VOC/images/train/02230.jpg new file mode 100644 index 0000000..7a213d3 Binary files /dev/null and b/VOC/images/train/02230.jpg differ diff --git a/VOC/images/train/02240.jpg b/VOC/images/train/02240.jpg new file mode 100644 index 0000000..dda143a Binary files /dev/null and b/VOC/images/train/02240.jpg differ diff --git a/VOC/images/train/02250.jpg b/VOC/images/train/02250.jpg new file mode 100644 index 0000000..af74ebe Binary files /dev/null and b/VOC/images/train/02250.jpg differ diff --git a/VOC/images/train/02260.jpg b/VOC/images/train/02260.jpg new file mode 100644 index 0000000..4e22b49 Binary files /dev/null and b/VOC/images/train/02260.jpg differ diff --git a/VOC/images/train/02270.jpg b/VOC/images/train/02270.jpg new file mode 100644 index 0000000..8206b07 Binary files /dev/null and b/VOC/images/train/02270.jpg differ diff --git a/VOC/images/train/02280.jpg b/VOC/images/train/02280.jpg new file mode 100644 index 0000000..a30288a Binary files /dev/null and b/VOC/images/train/02280.jpg differ diff --git a/VOC/images/train/02290.jpg b/VOC/images/train/02290.jpg new file mode 100644 index 0000000..d2154c0 Binary files /dev/null and b/VOC/images/train/02290.jpg differ diff --git a/VOC/images/train/02300.jpg b/VOC/images/train/02300.jpg new file mode 100644 index 0000000..ee819a6 Binary files /dev/null and b/VOC/images/train/02300.jpg differ diff --git a/VOC/images/train/02310.jpg b/VOC/images/train/02310.jpg new file mode 100644 index 0000000..b8d2a10 Binary files /dev/null and b/VOC/images/train/02310.jpg differ diff --git a/VOC/images/train/02320.jpg b/VOC/images/train/02320.jpg new file mode 100644 index 0000000..401ae2a Binary files /dev/null and b/VOC/images/train/02320.jpg differ diff --git a/VOC/images/train/02330.jpg b/VOC/images/train/02330.jpg new file mode 100644 index 0000000..96bc17e Binary files /dev/null and b/VOC/images/train/02330.jpg differ diff --git a/VOC/images/train/02350.jpg b/VOC/images/train/02350.jpg new file mode 100644 index 0000000..fb3ea24 Binary files /dev/null and b/VOC/images/train/02350.jpg differ diff --git a/VOC/images/train/02360.jpg b/VOC/images/train/02360.jpg new file mode 100644 index 0000000..bb03d91 Binary files /dev/null and b/VOC/images/train/02360.jpg differ diff --git a/VOC/images/train/02370.jpg b/VOC/images/train/02370.jpg new file mode 100644 index 0000000..778bd27 Binary files /dev/null and b/VOC/images/train/02370.jpg differ diff --git a/VOC/images/train/02380.jpg b/VOC/images/train/02380.jpg new file mode 100644 index 0000000..165675f Binary files /dev/null and b/VOC/images/train/02380.jpg differ diff --git a/VOC/images/train/02390.jpg b/VOC/images/train/02390.jpg new file mode 100644 index 0000000..a5a6679 Binary files /dev/null and b/VOC/images/train/02390.jpg differ diff --git a/VOC/images/train/02400.jpg b/VOC/images/train/02400.jpg new file mode 100644 index 0000000..6ee852b Binary files /dev/null and b/VOC/images/train/02400.jpg differ diff --git a/VOC/images/train/02410.jpg b/VOC/images/train/02410.jpg new file mode 100644 index 0000000..95720cf Binary files /dev/null and b/VOC/images/train/02410.jpg differ diff --git a/VOC/images/train/02420.jpg b/VOC/images/train/02420.jpg new file mode 100644 index 0000000..74d0f99 Binary files /dev/null and b/VOC/images/train/02420.jpg differ diff --git a/VOC/images/train/02430.jpg b/VOC/images/train/02430.jpg new file mode 100644 index 0000000..0f4c21f Binary files /dev/null and b/VOC/images/train/02430.jpg differ diff --git a/VOC/images/train/02440.jpg b/VOC/images/train/02440.jpg new file mode 100644 index 0000000..9dd9c9f Binary files /dev/null and b/VOC/images/train/02440.jpg differ diff --git a/VOC/images/train/02460.jpg b/VOC/images/train/02460.jpg new file mode 100644 index 0000000..8845d5a Binary files /dev/null and b/VOC/images/train/02460.jpg differ diff --git a/VOC/images/train/02470.jpg b/VOC/images/train/02470.jpg new file mode 100644 index 0000000..7dc13e2 Binary files /dev/null and b/VOC/images/train/02470.jpg differ diff --git a/VOC/images/train/02480.jpg b/VOC/images/train/02480.jpg new file mode 100644 index 0000000..e7d5efe Binary files /dev/null and b/VOC/images/train/02480.jpg differ diff --git a/VOC/images/train/02500.jpg b/VOC/images/train/02500.jpg new file mode 100644 index 0000000..9454f2f Binary files /dev/null and b/VOC/images/train/02500.jpg differ diff --git a/VOC/images/train/02510.jpg b/VOC/images/train/02510.jpg new file mode 100644 index 0000000..72e927f Binary files /dev/null and b/VOC/images/train/02510.jpg differ diff --git a/VOC/images/train/02520.jpg b/VOC/images/train/02520.jpg new file mode 100644 index 0000000..eb646d0 Binary files /dev/null and b/VOC/images/train/02520.jpg differ diff --git a/VOC/images/train/02540.jpg b/VOC/images/train/02540.jpg new file mode 100644 index 0000000..f429bea Binary files /dev/null and b/VOC/images/train/02540.jpg differ diff --git a/VOC/images/train/02550.jpg b/VOC/images/train/02550.jpg new file mode 100644 index 0000000..46e0105 Binary files /dev/null and b/VOC/images/train/02550.jpg differ diff --git a/VOC/images/train/02560.jpg b/VOC/images/train/02560.jpg new file mode 100644 index 0000000..63e4c09 Binary files /dev/null and b/VOC/images/train/02560.jpg differ diff --git a/VOC/images/train/02570.jpg b/VOC/images/train/02570.jpg new file mode 100644 index 0000000..633cf6d Binary files /dev/null and b/VOC/images/train/02570.jpg differ diff --git a/VOC/images/train/02580.jpg b/VOC/images/train/02580.jpg new file mode 100644 index 0000000..c9cb83b Binary files /dev/null and b/VOC/images/train/02580.jpg differ diff --git a/VOC/images/train/02590.jpg b/VOC/images/train/02590.jpg new file mode 100644 index 0000000..7442122 Binary files /dev/null and b/VOC/images/train/02590.jpg differ diff --git a/VOC/images/train/02600.jpg b/VOC/images/train/02600.jpg new file mode 100644 index 0000000..ac16237 Binary files /dev/null and b/VOC/images/train/02600.jpg differ diff --git a/VOC/images/train/02620.jpg b/VOC/images/train/02620.jpg new file mode 100644 index 0000000..321b1e8 Binary files /dev/null and b/VOC/images/train/02620.jpg differ diff --git a/VOC/images/train/02630.jpg b/VOC/images/train/02630.jpg new file mode 100644 index 0000000..853effc Binary files /dev/null and b/VOC/images/train/02630.jpg differ diff --git a/VOC/images/train/02640.jpg b/VOC/images/train/02640.jpg new file mode 100644 index 0000000..8df9caa Binary files /dev/null and b/VOC/images/train/02640.jpg differ diff --git a/VOC/images/train/02650.jpg b/VOC/images/train/02650.jpg new file mode 100644 index 0000000..0270138 Binary files /dev/null and b/VOC/images/train/02650.jpg differ diff --git a/VOC/images/train/02660.jpg b/VOC/images/train/02660.jpg new file mode 100644 index 0000000..cfffe92 Binary files /dev/null and b/VOC/images/train/02660.jpg differ diff --git a/VOC/images/train/02670.jpg b/VOC/images/train/02670.jpg new file mode 100644 index 0000000..8012cd3 Binary files /dev/null and b/VOC/images/train/02670.jpg differ diff --git a/VOC/images/train/02680.jpg b/VOC/images/train/02680.jpg new file mode 100644 index 0000000..2249169 Binary files /dev/null and b/VOC/images/train/02680.jpg differ diff --git a/VOC/images/train/02690.jpg b/VOC/images/train/02690.jpg new file mode 100644 index 0000000..dd1dcfa Binary files /dev/null and b/VOC/images/train/02690.jpg differ diff --git a/VOC/images/train/02700.jpg b/VOC/images/train/02700.jpg new file mode 100644 index 0000000..6ec148f Binary files /dev/null and b/VOC/images/train/02700.jpg differ diff --git a/VOC/images/train/02710.jpg b/VOC/images/train/02710.jpg new file mode 100644 index 0000000..65cf6a5 Binary files /dev/null and b/VOC/images/train/02710.jpg differ diff --git a/VOC/images/train/02720.jpg b/VOC/images/train/02720.jpg new file mode 100644 index 0000000..b76389e Binary files /dev/null and b/VOC/images/train/02720.jpg differ diff --git a/VOC/images/train/02730.jpg b/VOC/images/train/02730.jpg new file mode 100644 index 0000000..eb7ec44 Binary files /dev/null and b/VOC/images/train/02730.jpg differ diff --git a/VOC/images/train/02740.jpg b/VOC/images/train/02740.jpg new file mode 100644 index 0000000..b8b4ce2 Binary files /dev/null and b/VOC/images/train/02740.jpg differ diff --git a/VOC/images/train/02770.jpg b/VOC/images/train/02770.jpg new file mode 100644 index 0000000..43eb532 Binary files /dev/null and b/VOC/images/train/02770.jpg differ diff --git a/VOC/images/train/02790.jpg b/VOC/images/train/02790.jpg new file mode 100644 index 0000000..5b50cb4 Binary files /dev/null and b/VOC/images/train/02790.jpg differ diff --git a/VOC/images/train/02800.jpg b/VOC/images/train/02800.jpg new file mode 100644 index 0000000..9e6e910 Binary files /dev/null and b/VOC/images/train/02800.jpg differ diff --git a/VOC/images/train/02810.jpg b/VOC/images/train/02810.jpg new file mode 100644 index 0000000..97e4824 Binary files /dev/null and b/VOC/images/train/02810.jpg differ diff --git a/VOC/images/train/02820.jpg b/VOC/images/train/02820.jpg new file mode 100644 index 0000000..91c8d57 Binary files /dev/null and b/VOC/images/train/02820.jpg differ diff --git a/VOC/images/train/02830.jpg b/VOC/images/train/02830.jpg new file mode 100644 index 0000000..3e1914e Binary files /dev/null and b/VOC/images/train/02830.jpg differ diff --git a/VOC/images/train/02840.jpg b/VOC/images/train/02840.jpg new file mode 100644 index 0000000..bf697af Binary files /dev/null and b/VOC/images/train/02840.jpg differ diff --git a/VOC/images/train/02850.jpg b/VOC/images/train/02850.jpg new file mode 100644 index 0000000..2ee8ebb Binary files /dev/null and b/VOC/images/train/02850.jpg differ diff --git a/VOC/images/train/02860.jpg b/VOC/images/train/02860.jpg new file mode 100644 index 0000000..29d6fff Binary files /dev/null and b/VOC/images/train/02860.jpg differ diff --git a/VOC/images/train/02870.jpg b/VOC/images/train/02870.jpg new file mode 100644 index 0000000..b269900 Binary files /dev/null and b/VOC/images/train/02870.jpg differ diff --git a/VOC/images/train/02880.jpg b/VOC/images/train/02880.jpg new file mode 100644 index 0000000..1fab4a6 Binary files /dev/null and b/VOC/images/train/02880.jpg differ diff --git a/VOC/images/train/02890.jpg b/VOC/images/train/02890.jpg new file mode 100644 index 0000000..ca0c356 Binary files /dev/null and b/VOC/images/train/02890.jpg differ diff --git a/VOC/images/train/02900.jpg b/VOC/images/train/02900.jpg new file mode 100644 index 0000000..b6eb47e Binary files /dev/null and b/VOC/images/train/02900.jpg differ diff --git a/VOC/images/train/02930.jpg b/VOC/images/train/02930.jpg new file mode 100644 index 0000000..bc5a6a2 Binary files /dev/null and b/VOC/images/train/02930.jpg differ diff --git a/VOC/images/train/02940.jpg b/VOC/images/train/02940.jpg new file mode 100644 index 0000000..b71e20f Binary files /dev/null and b/VOC/images/train/02940.jpg differ diff --git a/VOC/images/train/02950.jpg b/VOC/images/train/02950.jpg new file mode 100644 index 0000000..b28c8f1 Binary files /dev/null and b/VOC/images/train/02950.jpg differ diff --git a/VOC/images/train/02960.jpg b/VOC/images/train/02960.jpg new file mode 100644 index 0000000..47f2d3d Binary files /dev/null and b/VOC/images/train/02960.jpg differ diff --git a/VOC/images/train/02970.jpg b/VOC/images/train/02970.jpg new file mode 100644 index 0000000..80318fb Binary files /dev/null and b/VOC/images/train/02970.jpg differ diff --git a/VOC/images/train/02980.jpg b/VOC/images/train/02980.jpg new file mode 100644 index 0000000..9d65af8 Binary files /dev/null and b/VOC/images/train/02980.jpg differ diff --git a/VOC/images/train/02990.jpg b/VOC/images/train/02990.jpg new file mode 100644 index 0000000..3d62cbb Binary files /dev/null and b/VOC/images/train/02990.jpg differ diff --git a/VOC/images/train/03000.jpg b/VOC/images/train/03000.jpg new file mode 100644 index 0000000..9b8a4f7 Binary files /dev/null and b/VOC/images/train/03000.jpg differ diff --git a/VOC/images/train/03010.jpg b/VOC/images/train/03010.jpg new file mode 100644 index 0000000..ce58a35 Binary files /dev/null and b/VOC/images/train/03010.jpg differ diff --git a/VOC/images/train/03020.jpg b/VOC/images/train/03020.jpg new file mode 100644 index 0000000..01f74d5 Binary files /dev/null and b/VOC/images/train/03020.jpg differ diff --git a/VOC/images/train/03030.jpg b/VOC/images/train/03030.jpg new file mode 100644 index 0000000..84eb7e9 Binary files /dev/null and b/VOC/images/train/03030.jpg differ diff --git a/VOC/images/train/03040.jpg b/VOC/images/train/03040.jpg new file mode 100644 index 0000000..fa628c5 Binary files /dev/null and b/VOC/images/train/03040.jpg differ diff --git a/VOC/images/train/03050.jpg b/VOC/images/train/03050.jpg new file mode 100644 index 0000000..42e405d Binary files /dev/null and b/VOC/images/train/03050.jpg differ diff --git a/VOC/images/train/03060.jpg b/VOC/images/train/03060.jpg new file mode 100644 index 0000000..ca8f0fa Binary files /dev/null and b/VOC/images/train/03060.jpg differ diff --git a/VOC/images/train/03070.jpg b/VOC/images/train/03070.jpg new file mode 100644 index 0000000..e3c4a59 Binary files /dev/null and b/VOC/images/train/03070.jpg differ diff --git a/VOC/images/train/03080.jpg b/VOC/images/train/03080.jpg new file mode 100644 index 0000000..a267caf Binary files /dev/null and b/VOC/images/train/03080.jpg differ diff --git a/VOC/images/train/03090.jpg b/VOC/images/train/03090.jpg new file mode 100644 index 0000000..82dbeac Binary files /dev/null and b/VOC/images/train/03090.jpg differ diff --git a/VOC/images/train/03100.jpg b/VOC/images/train/03100.jpg new file mode 100644 index 0000000..daa28c0 Binary files /dev/null and b/VOC/images/train/03100.jpg differ diff --git a/VOC/images/train/03110.jpg b/VOC/images/train/03110.jpg new file mode 100644 index 0000000..37fe406 Binary files /dev/null and b/VOC/images/train/03110.jpg differ diff --git a/VOC/images/train/03120.jpg b/VOC/images/train/03120.jpg new file mode 100644 index 0000000..153be33 Binary files /dev/null and b/VOC/images/train/03120.jpg differ diff --git a/VOC/images/train/03130.jpg b/VOC/images/train/03130.jpg new file mode 100644 index 0000000..ef899ea Binary files /dev/null and b/VOC/images/train/03130.jpg differ diff --git a/VOC/images/train/03140.jpg b/VOC/images/train/03140.jpg new file mode 100644 index 0000000..52ef496 Binary files /dev/null and b/VOC/images/train/03140.jpg differ diff --git a/VOC/images/train/03150.jpg b/VOC/images/train/03150.jpg new file mode 100644 index 0000000..688688a Binary files /dev/null and b/VOC/images/train/03150.jpg differ diff --git a/VOC/images/train/03160.jpg b/VOC/images/train/03160.jpg new file mode 100644 index 0000000..8554d27 Binary files /dev/null and b/VOC/images/train/03160.jpg differ diff --git a/VOC/images/train/03180.jpg b/VOC/images/train/03180.jpg new file mode 100644 index 0000000..5cd7d6d Binary files /dev/null and b/VOC/images/train/03180.jpg differ diff --git a/VOC/images/train/03190.jpg b/VOC/images/train/03190.jpg new file mode 100644 index 0000000..fc6ea8d Binary files /dev/null and b/VOC/images/train/03190.jpg differ diff --git a/VOC/images/train/03200.jpg b/VOC/images/train/03200.jpg new file mode 100644 index 0000000..6ee2a07 Binary files /dev/null and b/VOC/images/train/03200.jpg differ diff --git a/VOC/images/train/03210.jpg b/VOC/images/train/03210.jpg new file mode 100644 index 0000000..9219def Binary files /dev/null and b/VOC/images/train/03210.jpg differ diff --git a/VOC/images/train/03220.jpg b/VOC/images/train/03220.jpg new file mode 100644 index 0000000..42b5e35 Binary files /dev/null and b/VOC/images/train/03220.jpg differ diff --git a/VOC/images/train/03230.jpg b/VOC/images/train/03230.jpg new file mode 100644 index 0000000..f06d550 Binary files /dev/null and b/VOC/images/train/03230.jpg differ diff --git a/VOC/images/train/03240.jpg b/VOC/images/train/03240.jpg new file mode 100644 index 0000000..c916762 Binary files /dev/null and b/VOC/images/train/03240.jpg differ diff --git a/VOC/images/train/03260.jpg b/VOC/images/train/03260.jpg new file mode 100644 index 0000000..287d6da Binary files /dev/null and b/VOC/images/train/03260.jpg differ diff --git a/VOC/images/train/03270.jpg b/VOC/images/train/03270.jpg new file mode 100644 index 0000000..f64e670 Binary files /dev/null and b/VOC/images/train/03270.jpg differ diff --git a/VOC/images/train/03280.jpg b/VOC/images/train/03280.jpg new file mode 100644 index 0000000..9346c8b Binary files /dev/null and b/VOC/images/train/03280.jpg differ diff --git a/VOC/images/train/03290.jpg b/VOC/images/train/03290.jpg new file mode 100644 index 0000000..4e0cd76 Binary files /dev/null and b/VOC/images/train/03290.jpg differ diff --git a/VOC/images/train/03300.jpg b/VOC/images/train/03300.jpg new file mode 100644 index 0000000..6fa19cc Binary files /dev/null and b/VOC/images/train/03300.jpg differ diff --git a/VOC/images/train/03310.jpg b/VOC/images/train/03310.jpg new file mode 100644 index 0000000..af71af2 Binary files /dev/null and b/VOC/images/train/03310.jpg differ diff --git a/VOC/images/train/03320.jpg b/VOC/images/train/03320.jpg new file mode 100644 index 0000000..b375885 Binary files /dev/null and b/VOC/images/train/03320.jpg differ diff --git a/VOC/images/train/03330.jpg b/VOC/images/train/03330.jpg new file mode 100644 index 0000000..f1f79cd Binary files /dev/null and b/VOC/images/train/03330.jpg differ diff --git a/VOC/images/train/03340.jpg b/VOC/images/train/03340.jpg new file mode 100644 index 0000000..3db8f70 Binary files /dev/null and b/VOC/images/train/03340.jpg differ diff --git a/VOC/images/train/03350.jpg b/VOC/images/train/03350.jpg new file mode 100644 index 0000000..0d15d46 Binary files /dev/null and b/VOC/images/train/03350.jpg differ diff --git a/VOC/images/train/03360.jpg b/VOC/images/train/03360.jpg new file mode 100644 index 0000000..e4caaa8 Binary files /dev/null and b/VOC/images/train/03360.jpg differ diff --git a/VOC/images/train/03370.jpg b/VOC/images/train/03370.jpg new file mode 100644 index 0000000..8dbd5c5 Binary files /dev/null and b/VOC/images/train/03370.jpg differ diff --git a/VOC/images/train/03380.jpg b/VOC/images/train/03380.jpg new file mode 100644 index 0000000..7e8593a Binary files /dev/null and b/VOC/images/train/03380.jpg differ diff --git a/VOC/images/train/03390.jpg b/VOC/images/train/03390.jpg new file mode 100644 index 0000000..bbe02b9 Binary files /dev/null and b/VOC/images/train/03390.jpg differ diff --git a/VOC/images/train/03400.jpg b/VOC/images/train/03400.jpg new file mode 100644 index 0000000..e9b7f6c Binary files /dev/null and b/VOC/images/train/03400.jpg differ diff --git a/VOC/images/train/03410.jpg b/VOC/images/train/03410.jpg new file mode 100644 index 0000000..ac81195 Binary files /dev/null and b/VOC/images/train/03410.jpg differ diff --git a/VOC/images/train/03420.jpg b/VOC/images/train/03420.jpg new file mode 100644 index 0000000..0d3545b Binary files /dev/null and b/VOC/images/train/03420.jpg differ diff --git a/VOC/images/train/03430.jpg b/VOC/images/train/03430.jpg new file mode 100644 index 0000000..04758c7 Binary files /dev/null and b/VOC/images/train/03430.jpg differ diff --git a/VOC/images/train/03440.jpg b/VOC/images/train/03440.jpg new file mode 100644 index 0000000..88b6b80 Binary files /dev/null and b/VOC/images/train/03440.jpg differ diff --git a/VOC/images/train/03450.jpg b/VOC/images/train/03450.jpg new file mode 100644 index 0000000..cca4f04 Binary files /dev/null and b/VOC/images/train/03450.jpg differ diff --git a/VOC/images/train/03460.jpg b/VOC/images/train/03460.jpg new file mode 100644 index 0000000..3aea2b4 Binary files /dev/null and b/VOC/images/train/03460.jpg differ diff --git a/VOC/images/train/03470.jpg b/VOC/images/train/03470.jpg new file mode 100644 index 0000000..6bfaa7a Binary files /dev/null and b/VOC/images/train/03470.jpg differ diff --git a/VOC/images/train/03480.jpg b/VOC/images/train/03480.jpg new file mode 100644 index 0000000..a654eb0 Binary files /dev/null and b/VOC/images/train/03480.jpg differ diff --git a/VOC/images/train/03490.jpg b/VOC/images/train/03490.jpg new file mode 100644 index 0000000..0495116 Binary files /dev/null and b/VOC/images/train/03490.jpg differ diff --git a/VOC/images/train/03500.jpg b/VOC/images/train/03500.jpg new file mode 100644 index 0000000..7addbca Binary files /dev/null and b/VOC/images/train/03500.jpg differ diff --git a/VOC/images/train/03510.jpg b/VOC/images/train/03510.jpg new file mode 100644 index 0000000..e77116e Binary files /dev/null and b/VOC/images/train/03510.jpg differ diff --git a/VOC/images/train/03520.jpg b/VOC/images/train/03520.jpg new file mode 100644 index 0000000..f2888eb Binary files /dev/null and b/VOC/images/train/03520.jpg differ diff --git a/VOC/images/train/03530.jpg b/VOC/images/train/03530.jpg new file mode 100644 index 0000000..f3e1866 Binary files /dev/null and b/VOC/images/train/03530.jpg differ diff --git a/VOC/images/train/03540.jpg b/VOC/images/train/03540.jpg new file mode 100644 index 0000000..93d2db6 Binary files /dev/null and b/VOC/images/train/03540.jpg differ diff --git a/VOC/images/train/03550.jpg b/VOC/images/train/03550.jpg new file mode 100644 index 0000000..c001e32 Binary files /dev/null and b/VOC/images/train/03550.jpg differ diff --git a/VOC/images/train/03560.jpg b/VOC/images/train/03560.jpg new file mode 100644 index 0000000..4d1ed7b Binary files /dev/null and b/VOC/images/train/03560.jpg differ diff --git a/VOC/images/train/03570.jpg b/VOC/images/train/03570.jpg new file mode 100644 index 0000000..4c56128 Binary files /dev/null and b/VOC/images/train/03570.jpg differ diff --git a/VOC/images/train/03580.jpg b/VOC/images/train/03580.jpg new file mode 100644 index 0000000..71ab5af Binary files /dev/null and b/VOC/images/train/03580.jpg differ diff --git a/VOC/images/train/03590.jpg b/VOC/images/train/03590.jpg new file mode 100644 index 0000000..80ed9c1 Binary files /dev/null and b/VOC/images/train/03590.jpg differ diff --git a/VOC/images/train/03600.jpg b/VOC/images/train/03600.jpg new file mode 100644 index 0000000..dd3718a Binary files /dev/null and b/VOC/images/train/03600.jpg differ diff --git a/VOC/images/train/03610.jpg b/VOC/images/train/03610.jpg new file mode 100644 index 0000000..2b06ca6 Binary files /dev/null and b/VOC/images/train/03610.jpg differ diff --git a/VOC/images/train/03620.jpg b/VOC/images/train/03620.jpg new file mode 100644 index 0000000..496116f Binary files /dev/null and b/VOC/images/train/03620.jpg differ diff --git a/VOC/images/train/03640.jpg b/VOC/images/train/03640.jpg new file mode 100644 index 0000000..2c446ee Binary files /dev/null and b/VOC/images/train/03640.jpg differ diff --git a/VOC/images/train/03650.jpg b/VOC/images/train/03650.jpg new file mode 100644 index 0000000..e85e4b9 Binary files /dev/null and b/VOC/images/train/03650.jpg differ diff --git a/VOC/images/train/03660.jpg b/VOC/images/train/03660.jpg new file mode 100644 index 0000000..9f956e4 Binary files /dev/null and b/VOC/images/train/03660.jpg differ diff --git a/VOC/images/train/03670.jpg b/VOC/images/train/03670.jpg new file mode 100644 index 0000000..be98ce0 Binary files /dev/null and b/VOC/images/train/03670.jpg differ diff --git a/VOC/images/train/03690.jpg b/VOC/images/train/03690.jpg new file mode 100644 index 0000000..542a75f Binary files /dev/null and b/VOC/images/train/03690.jpg differ diff --git a/VOC/images/train/03700.jpg b/VOC/images/train/03700.jpg new file mode 100644 index 0000000..a944053 Binary files /dev/null and b/VOC/images/train/03700.jpg differ diff --git a/VOC/images/train/03710.jpg b/VOC/images/train/03710.jpg new file mode 100644 index 0000000..8181562 Binary files /dev/null and b/VOC/images/train/03710.jpg differ diff --git a/VOC/images/train/03720.jpg b/VOC/images/train/03720.jpg new file mode 100644 index 0000000..f337cb9 Binary files /dev/null and b/VOC/images/train/03720.jpg differ diff --git a/VOC/images/train/03730.jpg b/VOC/images/train/03730.jpg new file mode 100644 index 0000000..62554e5 Binary files /dev/null and b/VOC/images/train/03730.jpg differ diff --git a/VOC/images/train/03740.jpg b/VOC/images/train/03740.jpg new file mode 100644 index 0000000..7146e11 Binary files /dev/null and b/VOC/images/train/03740.jpg differ diff --git a/VOC/images/train/03750.jpg b/VOC/images/train/03750.jpg new file mode 100644 index 0000000..8e6f56e Binary files /dev/null and b/VOC/images/train/03750.jpg differ diff --git a/VOC/images/train/03760.jpg b/VOC/images/train/03760.jpg new file mode 100644 index 0000000..ea9e3ce Binary files /dev/null and b/VOC/images/train/03760.jpg differ diff --git a/VOC/images/train/03770.jpg b/VOC/images/train/03770.jpg new file mode 100644 index 0000000..9fbb51f Binary files /dev/null and b/VOC/images/train/03770.jpg differ diff --git a/VOC/images/train/03780.jpg b/VOC/images/train/03780.jpg new file mode 100644 index 0000000..5e0f957 Binary files /dev/null and b/VOC/images/train/03780.jpg differ diff --git a/VOC/images/train/03790.jpg b/VOC/images/train/03790.jpg new file mode 100644 index 0000000..613f7dc Binary files /dev/null and b/VOC/images/train/03790.jpg differ diff --git a/VOC/images/train/03800.jpg b/VOC/images/train/03800.jpg new file mode 100644 index 0000000..d2b66ce Binary files /dev/null and b/VOC/images/train/03800.jpg differ diff --git a/VOC/images/train/03810.jpg b/VOC/images/train/03810.jpg new file mode 100644 index 0000000..dc7ba24 Binary files /dev/null and b/VOC/images/train/03810.jpg differ diff --git a/VOC/images/train/03820.jpg b/VOC/images/train/03820.jpg new file mode 100644 index 0000000..0cc47ce Binary files /dev/null and b/VOC/images/train/03820.jpg differ diff --git a/VOC/images/train/03830.jpg b/VOC/images/train/03830.jpg new file mode 100644 index 0000000..8ca5157 Binary files /dev/null and b/VOC/images/train/03830.jpg differ diff --git a/VOC/images/train/03840.jpg b/VOC/images/train/03840.jpg new file mode 100644 index 0000000..804ad81 Binary files /dev/null and b/VOC/images/train/03840.jpg differ diff --git a/VOC/images/train/03850.jpg b/VOC/images/train/03850.jpg new file mode 100644 index 0000000..ff8e160 Binary files /dev/null and b/VOC/images/train/03850.jpg differ diff --git a/VOC/images/train/03860.jpg b/VOC/images/train/03860.jpg new file mode 100644 index 0000000..4dc6891 Binary files /dev/null and b/VOC/images/train/03860.jpg differ diff --git a/VOC/images/train/03870.jpg b/VOC/images/train/03870.jpg new file mode 100644 index 0000000..2a298e7 Binary files /dev/null and b/VOC/images/train/03870.jpg differ diff --git a/VOC/images/train/03880.jpg b/VOC/images/train/03880.jpg new file mode 100644 index 0000000..b98bd9c Binary files /dev/null and b/VOC/images/train/03880.jpg differ diff --git a/VOC/images/train/03890.jpg b/VOC/images/train/03890.jpg new file mode 100644 index 0000000..871791e Binary files /dev/null and b/VOC/images/train/03890.jpg differ diff --git a/VOC/images/train/03900.jpg b/VOC/images/train/03900.jpg new file mode 100644 index 0000000..b846d0b Binary files /dev/null and b/VOC/images/train/03900.jpg differ diff --git a/VOC/images/train/03910.jpg b/VOC/images/train/03910.jpg new file mode 100644 index 0000000..0d37c84 Binary files /dev/null and b/VOC/images/train/03910.jpg differ diff --git a/VOC/images/train/03920.jpg b/VOC/images/train/03920.jpg new file mode 100644 index 0000000..bf1513d Binary files /dev/null and b/VOC/images/train/03920.jpg differ diff --git a/VOC/images/train/03930.jpg b/VOC/images/train/03930.jpg new file mode 100644 index 0000000..3f43166 Binary files /dev/null and b/VOC/images/train/03930.jpg differ diff --git a/VOC/images/train/03940.jpg b/VOC/images/train/03940.jpg new file mode 100644 index 0000000..4de6b5a Binary files /dev/null and b/VOC/images/train/03940.jpg differ diff --git a/VOC/images/train/03950.jpg b/VOC/images/train/03950.jpg new file mode 100644 index 0000000..0f73e4f Binary files /dev/null and b/VOC/images/train/03950.jpg differ diff --git a/VOC/images/train/03960.jpg b/VOC/images/train/03960.jpg new file mode 100644 index 0000000..75b2bce Binary files /dev/null and b/VOC/images/train/03960.jpg differ diff --git a/VOC/images/train/03980.jpg b/VOC/images/train/03980.jpg new file mode 100644 index 0000000..bfb9b0d Binary files /dev/null and b/VOC/images/train/03980.jpg differ diff --git a/VOC/images/train/03990.jpg b/VOC/images/train/03990.jpg new file mode 100644 index 0000000..33f605a Binary files /dev/null and b/VOC/images/train/03990.jpg differ diff --git a/VOC/images/train/04000.jpg b/VOC/images/train/04000.jpg new file mode 100644 index 0000000..863f88e Binary files /dev/null and b/VOC/images/train/04000.jpg differ diff --git a/VOC/images/train/04010.jpg b/VOC/images/train/04010.jpg new file mode 100644 index 0000000..f45c67a Binary files /dev/null and b/VOC/images/train/04010.jpg differ diff --git a/VOC/images/train/04020.jpg b/VOC/images/train/04020.jpg new file mode 100644 index 0000000..a482f15 Binary files /dev/null and b/VOC/images/train/04020.jpg differ diff --git a/VOC/images/train/04030.jpg b/VOC/images/train/04030.jpg new file mode 100644 index 0000000..727e60f Binary files /dev/null and b/VOC/images/train/04030.jpg differ diff --git a/VOC/images/train/04040.jpg b/VOC/images/train/04040.jpg new file mode 100644 index 0000000..f39e0b1 Binary files /dev/null and b/VOC/images/train/04040.jpg differ diff --git a/VOC/images/train/04050.jpg b/VOC/images/train/04050.jpg new file mode 100644 index 0000000..95b4377 Binary files /dev/null and b/VOC/images/train/04050.jpg differ diff --git a/VOC/images/train/04060.jpg b/VOC/images/train/04060.jpg new file mode 100644 index 0000000..1d5dae7 Binary files /dev/null and b/VOC/images/train/04060.jpg differ diff --git a/VOC/images/train/04070.jpg b/VOC/images/train/04070.jpg new file mode 100644 index 0000000..890721b Binary files /dev/null and b/VOC/images/train/04070.jpg differ diff --git a/VOC/images/train/04080.jpg b/VOC/images/train/04080.jpg new file mode 100644 index 0000000..687053e Binary files /dev/null and b/VOC/images/train/04080.jpg differ diff --git a/VOC/images/train/04090.jpg b/VOC/images/train/04090.jpg new file mode 100644 index 0000000..1af51d6 Binary files /dev/null and b/VOC/images/train/04090.jpg differ diff --git a/VOC/images/train/04100.jpg b/VOC/images/train/04100.jpg new file mode 100644 index 0000000..a39625e Binary files /dev/null and b/VOC/images/train/04100.jpg differ diff --git a/VOC/images/train/04110.jpg b/VOC/images/train/04110.jpg new file mode 100644 index 0000000..954f3e0 Binary files /dev/null and b/VOC/images/train/04110.jpg differ diff --git a/VOC/images/train/04120.jpg b/VOC/images/train/04120.jpg new file mode 100644 index 0000000..35210f8 Binary files /dev/null and b/VOC/images/train/04120.jpg differ diff --git a/VOC/images/train/04130.jpg b/VOC/images/train/04130.jpg new file mode 100644 index 0000000..30b37b0 Binary files /dev/null and b/VOC/images/train/04130.jpg differ diff --git a/VOC/images/train/04140.jpg b/VOC/images/train/04140.jpg new file mode 100644 index 0000000..9cd0b5f Binary files /dev/null and b/VOC/images/train/04140.jpg differ diff --git a/VOC/images/train/04150.jpg b/VOC/images/train/04150.jpg new file mode 100644 index 0000000..5b918f3 Binary files /dev/null and b/VOC/images/train/04150.jpg differ diff --git a/VOC/images/train/04160.jpg b/VOC/images/train/04160.jpg new file mode 100644 index 0000000..37222c1 Binary files /dev/null and b/VOC/images/train/04160.jpg differ diff --git a/VOC/images/train/04170.jpg b/VOC/images/train/04170.jpg new file mode 100644 index 0000000..dcceaa0 Binary files /dev/null and b/VOC/images/train/04170.jpg differ diff --git a/VOC/images/train/04180.jpg b/VOC/images/train/04180.jpg new file mode 100644 index 0000000..12b15a4 Binary files /dev/null and b/VOC/images/train/04180.jpg differ diff --git a/VOC/images/train/04190.jpg b/VOC/images/train/04190.jpg new file mode 100644 index 0000000..89a87e6 Binary files /dev/null and b/VOC/images/train/04190.jpg differ diff --git a/VOC/images/train/04200.jpg b/VOC/images/train/04200.jpg new file mode 100644 index 0000000..6ec5b37 Binary files /dev/null and b/VOC/images/train/04200.jpg differ diff --git a/VOC/images/train/04210.jpg b/VOC/images/train/04210.jpg new file mode 100644 index 0000000..95d916c Binary files /dev/null and b/VOC/images/train/04210.jpg differ diff --git a/VOC/images/train/04220.jpg b/VOC/images/train/04220.jpg new file mode 100644 index 0000000..8a1a1f2 Binary files /dev/null and b/VOC/images/train/04220.jpg differ diff --git a/VOC/images/train/04230.jpg b/VOC/images/train/04230.jpg new file mode 100644 index 0000000..54f3400 Binary files /dev/null and b/VOC/images/train/04230.jpg differ diff --git a/VOC/images/train/04240.jpg b/VOC/images/train/04240.jpg new file mode 100644 index 0000000..b7d54b2 Binary files /dev/null and b/VOC/images/train/04240.jpg differ diff --git a/VOC/images/train/04250.jpg b/VOC/images/train/04250.jpg new file mode 100644 index 0000000..a88cec1 Binary files /dev/null and b/VOC/images/train/04250.jpg differ diff --git a/VOC/images/train/04260.jpg b/VOC/images/train/04260.jpg new file mode 100644 index 0000000..2126a51 Binary files /dev/null and b/VOC/images/train/04260.jpg differ diff --git a/VOC/images/train/04270.jpg b/VOC/images/train/04270.jpg new file mode 100644 index 0000000..d21ab63 Binary files /dev/null and b/VOC/images/train/04270.jpg differ diff --git a/VOC/images/train/04280.jpg b/VOC/images/train/04280.jpg new file mode 100644 index 0000000..06af54c Binary files /dev/null and b/VOC/images/train/04280.jpg differ diff --git a/VOC/images/train/04290.jpg b/VOC/images/train/04290.jpg new file mode 100644 index 0000000..ca4f432 Binary files /dev/null and b/VOC/images/train/04290.jpg differ diff --git a/VOC/images/train/04300.jpg b/VOC/images/train/04300.jpg new file mode 100644 index 0000000..629f303 Binary files /dev/null and b/VOC/images/train/04300.jpg differ diff --git a/VOC/images/train/04310.jpg b/VOC/images/train/04310.jpg new file mode 100644 index 0000000..9edeff9 Binary files /dev/null and b/VOC/images/train/04310.jpg differ diff --git a/VOC/images/train/04320.jpg b/VOC/images/train/04320.jpg new file mode 100644 index 0000000..897f897 Binary files /dev/null and b/VOC/images/train/04320.jpg differ diff --git a/VOC/images/train/04330.jpg b/VOC/images/train/04330.jpg new file mode 100644 index 0000000..1bb0f66 Binary files /dev/null and b/VOC/images/train/04330.jpg differ diff --git a/VOC/images/train/04340.jpg b/VOC/images/train/04340.jpg new file mode 100644 index 0000000..5b2f41b Binary files /dev/null and b/VOC/images/train/04340.jpg differ diff --git a/VOC/images/train/04350.jpg b/VOC/images/train/04350.jpg new file mode 100644 index 0000000..72c575c Binary files /dev/null and b/VOC/images/train/04350.jpg differ diff --git a/VOC/images/train/04360.jpg b/VOC/images/train/04360.jpg new file mode 100644 index 0000000..c309712 Binary files /dev/null and b/VOC/images/train/04360.jpg differ diff --git a/VOC/images/train/04370.jpg b/VOC/images/train/04370.jpg new file mode 100644 index 0000000..ebffa81 Binary files /dev/null and b/VOC/images/train/04370.jpg differ diff --git a/VOC/images/train/04380.jpg b/VOC/images/train/04380.jpg new file mode 100644 index 0000000..7121767 Binary files /dev/null and b/VOC/images/train/04380.jpg differ diff --git a/VOC/images/train/04390.jpg b/VOC/images/train/04390.jpg new file mode 100644 index 0000000..f8502c4 Binary files /dev/null and b/VOC/images/train/04390.jpg differ diff --git a/VOC/images/train/04400.jpg b/VOC/images/train/04400.jpg new file mode 100644 index 0000000..b4abeb9 Binary files /dev/null and b/VOC/images/train/04400.jpg differ diff --git a/VOC/images/train/04410.jpg b/VOC/images/train/04410.jpg new file mode 100644 index 0000000..84f3b42 Binary files /dev/null and b/VOC/images/train/04410.jpg differ diff --git a/VOC/images/train/04420.jpg b/VOC/images/train/04420.jpg new file mode 100644 index 0000000..fa4bc94 Binary files /dev/null and b/VOC/images/train/04420.jpg differ diff --git a/VOC/images/train/04430.jpg b/VOC/images/train/04430.jpg new file mode 100644 index 0000000..01b4d79 Binary files /dev/null and b/VOC/images/train/04430.jpg differ diff --git a/VOC/images/train/04440.jpg b/VOC/images/train/04440.jpg new file mode 100644 index 0000000..ee41516 Binary files /dev/null and b/VOC/images/train/04440.jpg differ diff --git a/VOC/images/train/04450.jpg b/VOC/images/train/04450.jpg new file mode 100644 index 0000000..f629fed Binary files /dev/null and b/VOC/images/train/04450.jpg differ diff --git a/VOC/images/train/04460.jpg b/VOC/images/train/04460.jpg new file mode 100644 index 0000000..2a7ec40 Binary files /dev/null and b/VOC/images/train/04460.jpg differ diff --git a/VOC/images/train/04470.jpg b/VOC/images/train/04470.jpg new file mode 100644 index 0000000..74d3d1b Binary files /dev/null and b/VOC/images/train/04470.jpg differ diff --git a/VOC/images/train/04480.jpg b/VOC/images/train/04480.jpg new file mode 100644 index 0000000..b473f9b Binary files /dev/null and b/VOC/images/train/04480.jpg differ diff --git a/VOC/images/train/04490.jpg b/VOC/images/train/04490.jpg new file mode 100644 index 0000000..b7ca14e Binary files /dev/null and b/VOC/images/train/04490.jpg differ diff --git a/VOC/images/train/04500.jpg b/VOC/images/train/04500.jpg new file mode 100644 index 0000000..3078826 Binary files /dev/null and b/VOC/images/train/04500.jpg differ diff --git a/VOC/images/train/04510.jpg b/VOC/images/train/04510.jpg new file mode 100644 index 0000000..5b01254 Binary files /dev/null and b/VOC/images/train/04510.jpg differ diff --git a/VOC/images/train/04520.jpg b/VOC/images/train/04520.jpg new file mode 100644 index 0000000..2076ad1 Binary files /dev/null and b/VOC/images/train/04520.jpg differ diff --git a/VOC/images/train/04530.jpg b/VOC/images/train/04530.jpg new file mode 100644 index 0000000..42ceb07 Binary files /dev/null and b/VOC/images/train/04530.jpg differ diff --git a/VOC/images/train/04540.jpg b/VOC/images/train/04540.jpg new file mode 100644 index 0000000..b583735 Binary files /dev/null and b/VOC/images/train/04540.jpg differ diff --git a/VOC/images/train/04550.jpg b/VOC/images/train/04550.jpg new file mode 100644 index 0000000..0960c1b Binary files /dev/null and b/VOC/images/train/04550.jpg differ diff --git a/VOC/images/train/04560.jpg b/VOC/images/train/04560.jpg new file mode 100644 index 0000000..e09c908 Binary files /dev/null and b/VOC/images/train/04560.jpg differ diff --git a/VOC/images/train/04580.jpg b/VOC/images/train/04580.jpg new file mode 100644 index 0000000..d69bcba Binary files /dev/null and b/VOC/images/train/04580.jpg differ diff --git a/VOC/images/train/04590.jpg b/VOC/images/train/04590.jpg new file mode 100644 index 0000000..755e001 Binary files /dev/null and b/VOC/images/train/04590.jpg differ diff --git a/VOC/images/train/04600.jpg b/VOC/images/train/04600.jpg new file mode 100644 index 0000000..17fab72 Binary files /dev/null and b/VOC/images/train/04600.jpg differ diff --git a/VOC/images/train/04610.jpg b/VOC/images/train/04610.jpg new file mode 100644 index 0000000..7db3130 Binary files /dev/null and b/VOC/images/train/04610.jpg differ diff --git a/VOC/images/train/04620.jpg b/VOC/images/train/04620.jpg new file mode 100644 index 0000000..4210bf7 Binary files /dev/null and b/VOC/images/train/04620.jpg differ diff --git a/VOC/images/train/04630.jpg b/VOC/images/train/04630.jpg new file mode 100644 index 0000000..5a03303 Binary files /dev/null and b/VOC/images/train/04630.jpg differ diff --git a/VOC/images/train/04640.jpg b/VOC/images/train/04640.jpg new file mode 100644 index 0000000..6500ac9 Binary files /dev/null and b/VOC/images/train/04640.jpg differ diff --git a/VOC/images/train/04650.jpg b/VOC/images/train/04650.jpg new file mode 100644 index 0000000..f90373f Binary files /dev/null and b/VOC/images/train/04650.jpg differ diff --git a/VOC/images/train/04660.jpg b/VOC/images/train/04660.jpg new file mode 100644 index 0000000..b850ccc Binary files /dev/null and b/VOC/images/train/04660.jpg differ diff --git a/VOC/images/train/04670.jpg b/VOC/images/train/04670.jpg new file mode 100644 index 0000000..a549700 Binary files /dev/null and b/VOC/images/train/04670.jpg differ diff --git a/VOC/images/train/04690.jpg b/VOC/images/train/04690.jpg new file mode 100644 index 0000000..13ff6ea Binary files /dev/null and b/VOC/images/train/04690.jpg differ diff --git a/VOC/images/train/04720.jpg b/VOC/images/train/04720.jpg new file mode 100644 index 0000000..06cd5a0 Binary files /dev/null and b/VOC/images/train/04720.jpg differ diff --git a/VOC/images/train/04730.jpg b/VOC/images/train/04730.jpg new file mode 100644 index 0000000..9c47e09 Binary files /dev/null and b/VOC/images/train/04730.jpg differ diff --git a/VOC/images/train/04740.jpg b/VOC/images/train/04740.jpg new file mode 100644 index 0000000..7b100e1 Binary files /dev/null and b/VOC/images/train/04740.jpg differ diff --git a/VOC/images/train/04750.jpg b/VOC/images/train/04750.jpg new file mode 100644 index 0000000..fa7c177 Binary files /dev/null and b/VOC/images/train/04750.jpg differ diff --git a/VOC/images/train/04760.jpg b/VOC/images/train/04760.jpg new file mode 100644 index 0000000..5a6a700 Binary files /dev/null and b/VOC/images/train/04760.jpg differ diff --git a/VOC/images/train/04770.jpg b/VOC/images/train/04770.jpg new file mode 100644 index 0000000..183b9db Binary files /dev/null and b/VOC/images/train/04770.jpg differ diff --git a/VOC/images/train/04780.jpg b/VOC/images/train/04780.jpg new file mode 100644 index 0000000..cddfc1f Binary files /dev/null and b/VOC/images/train/04780.jpg differ diff --git a/VOC/images/train/04790.jpg b/VOC/images/train/04790.jpg new file mode 100644 index 0000000..776f713 Binary files /dev/null and b/VOC/images/train/04790.jpg differ diff --git a/VOC/images/train/04800.jpg b/VOC/images/train/04800.jpg new file mode 100644 index 0000000..b1bae35 Binary files /dev/null and b/VOC/images/train/04800.jpg differ diff --git a/VOC/images/train/04810.jpg b/VOC/images/train/04810.jpg new file mode 100644 index 0000000..f6abc4b Binary files /dev/null and b/VOC/images/train/04810.jpg differ diff --git a/VOC/images/train/04820.jpg b/VOC/images/train/04820.jpg new file mode 100644 index 0000000..95705c0 Binary files /dev/null and b/VOC/images/train/04820.jpg differ diff --git a/VOC/images/train/04830.jpg b/VOC/images/train/04830.jpg new file mode 100644 index 0000000..a83a28b Binary files /dev/null and b/VOC/images/train/04830.jpg differ diff --git a/VOC/images/train/04840.jpg b/VOC/images/train/04840.jpg new file mode 100644 index 0000000..2792c66 Binary files /dev/null and b/VOC/images/train/04840.jpg differ diff --git a/VOC/images/train/04850.jpg b/VOC/images/train/04850.jpg new file mode 100644 index 0000000..85d73c2 Binary files /dev/null and b/VOC/images/train/04850.jpg differ diff --git a/VOC/images/train/04860.jpg b/VOC/images/train/04860.jpg new file mode 100644 index 0000000..66dfb6c Binary files /dev/null and b/VOC/images/train/04860.jpg differ diff --git a/VOC/images/train/04870.jpg b/VOC/images/train/04870.jpg new file mode 100644 index 0000000..1d9d443 Binary files /dev/null and b/VOC/images/train/04870.jpg differ diff --git a/VOC/images/train/04880.jpg b/VOC/images/train/04880.jpg new file mode 100644 index 0000000..ce6742b Binary files /dev/null and b/VOC/images/train/04880.jpg differ diff --git a/VOC/images/train/04890.jpg b/VOC/images/train/04890.jpg new file mode 100644 index 0000000..d9790be Binary files /dev/null and b/VOC/images/train/04890.jpg differ diff --git a/VOC/images/train/04900.jpg b/VOC/images/train/04900.jpg new file mode 100644 index 0000000..891995b Binary files /dev/null and b/VOC/images/train/04900.jpg differ diff --git a/VOC/images/train/04910.jpg b/VOC/images/train/04910.jpg new file mode 100644 index 0000000..c51e98b Binary files /dev/null and b/VOC/images/train/04910.jpg differ diff --git a/VOC/images/train/04920.jpg b/VOC/images/train/04920.jpg new file mode 100644 index 0000000..17f63b3 Binary files /dev/null and b/VOC/images/train/04920.jpg differ diff --git a/VOC/images/train/04930.jpg b/VOC/images/train/04930.jpg new file mode 100644 index 0000000..a6e0309 Binary files /dev/null and b/VOC/images/train/04930.jpg differ diff --git a/VOC/images/train/04940.jpg b/VOC/images/train/04940.jpg new file mode 100644 index 0000000..970f994 Binary files /dev/null and b/VOC/images/train/04940.jpg differ diff --git a/VOC/images/train/04960.jpg b/VOC/images/train/04960.jpg new file mode 100644 index 0000000..ff0a54d Binary files /dev/null and b/VOC/images/train/04960.jpg differ diff --git a/VOC/images/train/04970.jpg b/VOC/images/train/04970.jpg new file mode 100644 index 0000000..a7d39b6 Binary files /dev/null and b/VOC/images/train/04970.jpg differ diff --git a/VOC/images/train/04980.jpg b/VOC/images/train/04980.jpg new file mode 100644 index 0000000..05ea934 Binary files /dev/null and b/VOC/images/train/04980.jpg differ diff --git a/VOC/images/train/04990.jpg b/VOC/images/train/04990.jpg new file mode 100644 index 0000000..dd30ac1 Binary files /dev/null and b/VOC/images/train/04990.jpg differ diff --git a/VOC/images/train/05000.jpg b/VOC/images/train/05000.jpg new file mode 100644 index 0000000..1ff56f2 Binary files /dev/null and b/VOC/images/train/05000.jpg differ diff --git a/VOC/images/train/05010.jpg b/VOC/images/train/05010.jpg new file mode 100644 index 0000000..298f13f Binary files /dev/null and b/VOC/images/train/05010.jpg differ diff --git a/VOC/images/train/05030.jpg b/VOC/images/train/05030.jpg new file mode 100644 index 0000000..76e24bd Binary files /dev/null and b/VOC/images/train/05030.jpg differ diff --git a/VOC/images/train/05040.jpg b/VOC/images/train/05040.jpg new file mode 100644 index 0000000..d3e0ff1 Binary files /dev/null and b/VOC/images/train/05040.jpg differ diff --git a/VOC/images/train/05050.jpg b/VOC/images/train/05050.jpg new file mode 100644 index 0000000..0e0946f Binary files /dev/null and b/VOC/images/train/05050.jpg differ diff --git a/VOC/images/train/05060.jpg b/VOC/images/train/05060.jpg new file mode 100644 index 0000000..dc611f7 Binary files /dev/null and b/VOC/images/train/05060.jpg differ diff --git a/VOC/images/train/05070.jpg b/VOC/images/train/05070.jpg new file mode 100644 index 0000000..fa13b81 Binary files /dev/null and b/VOC/images/train/05070.jpg differ diff --git a/VOC/images/train/05080.jpg b/VOC/images/train/05080.jpg new file mode 100644 index 0000000..c22f0c7 Binary files /dev/null and b/VOC/images/train/05080.jpg differ diff --git a/VOC/images/train/05090.jpg b/VOC/images/train/05090.jpg new file mode 100644 index 0000000..c0a6bbf Binary files /dev/null and b/VOC/images/train/05090.jpg differ diff --git a/VOC/images/train/05100.jpg b/VOC/images/train/05100.jpg new file mode 100644 index 0000000..502007f Binary files /dev/null and b/VOC/images/train/05100.jpg differ diff --git a/VOC/images/train/05110.jpg b/VOC/images/train/05110.jpg new file mode 100644 index 0000000..3a52932 Binary files /dev/null and b/VOC/images/train/05110.jpg differ diff --git a/VOC/images/train/05130.jpg b/VOC/images/train/05130.jpg new file mode 100644 index 0000000..9955d19 Binary files /dev/null and b/VOC/images/train/05130.jpg differ diff --git a/VOC/images/train/05140.jpg b/VOC/images/train/05140.jpg new file mode 100644 index 0000000..e4c417e Binary files /dev/null and b/VOC/images/train/05140.jpg differ diff --git a/VOC/images/train/05150.jpg b/VOC/images/train/05150.jpg new file mode 100644 index 0000000..5c5a2cb Binary files /dev/null and b/VOC/images/train/05150.jpg differ diff --git a/VOC/images/train/05160.jpg b/VOC/images/train/05160.jpg new file mode 100644 index 0000000..72eacc3 Binary files /dev/null and b/VOC/images/train/05160.jpg differ diff --git a/VOC/images/train/05190.jpg b/VOC/images/train/05190.jpg new file mode 100644 index 0000000..423eee7 Binary files /dev/null and b/VOC/images/train/05190.jpg differ diff --git a/VOC/images/train/05200.jpg b/VOC/images/train/05200.jpg new file mode 100644 index 0000000..4baefd4 Binary files /dev/null and b/VOC/images/train/05200.jpg differ diff --git a/VOC/images/train/05210.jpg b/VOC/images/train/05210.jpg new file mode 100644 index 0000000..945ce72 Binary files /dev/null and b/VOC/images/train/05210.jpg differ diff --git a/VOC/images/train/05220.jpg b/VOC/images/train/05220.jpg new file mode 100644 index 0000000..a9b5119 Binary files /dev/null and b/VOC/images/train/05220.jpg differ diff --git a/VOC/images/train/05230.jpg b/VOC/images/train/05230.jpg new file mode 100644 index 0000000..7e8eb09 Binary files /dev/null and b/VOC/images/train/05230.jpg differ diff --git a/VOC/images/train/05240.jpg b/VOC/images/train/05240.jpg new file mode 100644 index 0000000..9520a24 Binary files /dev/null and b/VOC/images/train/05240.jpg differ diff --git a/VOC/images/train/05250.jpg b/VOC/images/train/05250.jpg new file mode 100644 index 0000000..fa0dbdb Binary files /dev/null and b/VOC/images/train/05250.jpg differ diff --git a/VOC/images/train/05260.jpg b/VOC/images/train/05260.jpg new file mode 100644 index 0000000..8e78616 Binary files /dev/null and b/VOC/images/train/05260.jpg differ diff --git a/VOC/images/train/05270.jpg b/VOC/images/train/05270.jpg new file mode 100644 index 0000000..5d75978 Binary files /dev/null and b/VOC/images/train/05270.jpg differ diff --git a/VOC/images/train/05280.jpg b/VOC/images/train/05280.jpg new file mode 100644 index 0000000..d8d9d24 Binary files /dev/null and b/VOC/images/train/05280.jpg differ diff --git a/VOC/images/train/05290.jpg b/VOC/images/train/05290.jpg new file mode 100644 index 0000000..b9226b4 Binary files /dev/null and b/VOC/images/train/05290.jpg differ diff --git a/VOC/images/train/05300.jpg b/VOC/images/train/05300.jpg new file mode 100644 index 0000000..22059d7 Binary files /dev/null and b/VOC/images/train/05300.jpg differ diff --git a/VOC/images/train/05310.jpg b/VOC/images/train/05310.jpg new file mode 100644 index 0000000..2bb5904 Binary files /dev/null and b/VOC/images/train/05310.jpg differ diff --git a/VOC/images/train/05320.jpg b/VOC/images/train/05320.jpg new file mode 100644 index 0000000..c45769e Binary files /dev/null and b/VOC/images/train/05320.jpg differ diff --git a/VOC/images/train/05330.jpg b/VOC/images/train/05330.jpg new file mode 100644 index 0000000..d142014 Binary files /dev/null and b/VOC/images/train/05330.jpg differ diff --git a/VOC/images/train/05340.jpg b/VOC/images/train/05340.jpg new file mode 100644 index 0000000..94f7390 Binary files /dev/null and b/VOC/images/train/05340.jpg differ diff --git a/VOC/images/train/05350.jpg b/VOC/images/train/05350.jpg new file mode 100644 index 0000000..4a1d44f Binary files /dev/null and b/VOC/images/train/05350.jpg differ diff --git a/VOC/images/train/05360.jpg b/VOC/images/train/05360.jpg new file mode 100644 index 0000000..acc9044 Binary files /dev/null and b/VOC/images/train/05360.jpg differ diff --git a/VOC/images/train/05370.jpg b/VOC/images/train/05370.jpg new file mode 100644 index 0000000..d390646 Binary files /dev/null and b/VOC/images/train/05370.jpg differ diff --git a/VOC/images/train/05380.jpg b/VOC/images/train/05380.jpg new file mode 100644 index 0000000..143aa27 Binary files /dev/null and b/VOC/images/train/05380.jpg differ diff --git a/VOC/images/train/05390.jpg b/VOC/images/train/05390.jpg new file mode 100644 index 0000000..1f5e17c Binary files /dev/null and b/VOC/images/train/05390.jpg differ diff --git a/VOC/images/train/05400.jpg b/VOC/images/train/05400.jpg new file mode 100644 index 0000000..9a40ca8 Binary files /dev/null and b/VOC/images/train/05400.jpg differ diff --git a/VOC/images/train/05410.jpg b/VOC/images/train/05410.jpg new file mode 100644 index 0000000..30585f0 Binary files /dev/null and b/VOC/images/train/05410.jpg differ diff --git a/VOC/images/train/05420.jpg b/VOC/images/train/05420.jpg new file mode 100644 index 0000000..47d07cc Binary files /dev/null and b/VOC/images/train/05420.jpg differ diff --git a/VOC/images/train/05430.jpg b/VOC/images/train/05430.jpg new file mode 100644 index 0000000..96cbcdd Binary files /dev/null and b/VOC/images/train/05430.jpg differ diff --git a/VOC/images/train/05440.jpg b/VOC/images/train/05440.jpg new file mode 100644 index 0000000..f0b521f Binary files /dev/null and b/VOC/images/train/05440.jpg differ diff --git a/VOC/images/train/05450.jpg b/VOC/images/train/05450.jpg new file mode 100644 index 0000000..a800e88 Binary files /dev/null and b/VOC/images/train/05450.jpg differ diff --git a/VOC/images/train/05460.jpg b/VOC/images/train/05460.jpg new file mode 100644 index 0000000..cc3db1c Binary files /dev/null and b/VOC/images/train/05460.jpg differ diff --git a/VOC/images/train/05480.jpg b/VOC/images/train/05480.jpg new file mode 100644 index 0000000..2581c3f Binary files /dev/null and b/VOC/images/train/05480.jpg differ diff --git a/VOC/images/train/05490.jpg b/VOC/images/train/05490.jpg new file mode 100644 index 0000000..b0665e6 Binary files /dev/null and b/VOC/images/train/05490.jpg differ diff --git a/VOC/images/train/05500.jpg b/VOC/images/train/05500.jpg new file mode 100644 index 0000000..d1b8e63 Binary files /dev/null and b/VOC/images/train/05500.jpg differ diff --git a/VOC/images/train/05510.jpg b/VOC/images/train/05510.jpg new file mode 100644 index 0000000..121f68f Binary files /dev/null and b/VOC/images/train/05510.jpg differ diff --git a/VOC/images/train/05520.jpg b/VOC/images/train/05520.jpg new file mode 100644 index 0000000..6dc54e7 Binary files /dev/null and b/VOC/images/train/05520.jpg differ diff --git a/VOC/images/train/05530.jpg b/VOC/images/train/05530.jpg new file mode 100644 index 0000000..3114317 Binary files /dev/null and b/VOC/images/train/05530.jpg differ diff --git a/VOC/images/train/05540.jpg b/VOC/images/train/05540.jpg new file mode 100644 index 0000000..a4ae5e8 Binary files /dev/null and b/VOC/images/train/05540.jpg differ diff --git a/VOC/images/train/05550.jpg b/VOC/images/train/05550.jpg new file mode 100644 index 0000000..013387d Binary files /dev/null and b/VOC/images/train/05550.jpg differ diff --git a/VOC/images/train/05560.jpg b/VOC/images/train/05560.jpg new file mode 100644 index 0000000..12b5227 Binary files /dev/null and b/VOC/images/train/05560.jpg differ diff --git a/VOC/images/train/05570.jpg b/VOC/images/train/05570.jpg new file mode 100644 index 0000000..c19c70b Binary files /dev/null and b/VOC/images/train/05570.jpg differ diff --git a/VOC/images/train/05590.jpg b/VOC/images/train/05590.jpg new file mode 100644 index 0000000..0ba3789 Binary files /dev/null and b/VOC/images/train/05590.jpg differ diff --git a/VOC/images/train/05600.jpg b/VOC/images/train/05600.jpg new file mode 100644 index 0000000..b73013f Binary files /dev/null and b/VOC/images/train/05600.jpg differ diff --git a/VOC/images/train/05610.jpg b/VOC/images/train/05610.jpg new file mode 100644 index 0000000..81217e4 Binary files /dev/null and b/VOC/images/train/05610.jpg differ diff --git a/VOC/images/train/05620.jpg b/VOC/images/train/05620.jpg new file mode 100644 index 0000000..cec388c Binary files /dev/null and b/VOC/images/train/05620.jpg differ diff --git a/VOC/images/train/05630.jpg b/VOC/images/train/05630.jpg new file mode 100644 index 0000000..7ab7af4 Binary files /dev/null and b/VOC/images/train/05630.jpg differ diff --git a/VOC/images/train/05640.jpg b/VOC/images/train/05640.jpg new file mode 100644 index 0000000..816a6ba Binary files /dev/null and b/VOC/images/train/05640.jpg differ diff --git a/VOC/images/train/05650.jpg b/VOC/images/train/05650.jpg new file mode 100644 index 0000000..b5b6f57 Binary files /dev/null and b/VOC/images/train/05650.jpg differ diff --git a/VOC/images/train/05660.jpg b/VOC/images/train/05660.jpg new file mode 100644 index 0000000..d6a021f Binary files /dev/null and b/VOC/images/train/05660.jpg differ diff --git a/VOC/images/train/05670.jpg b/VOC/images/train/05670.jpg new file mode 100644 index 0000000..e5c3735 Binary files /dev/null and b/VOC/images/train/05670.jpg differ diff --git a/VOC/images/train/05680.jpg b/VOC/images/train/05680.jpg new file mode 100644 index 0000000..dcbbb32 Binary files /dev/null and b/VOC/images/train/05680.jpg differ diff --git a/VOC/images/train/05690.jpg b/VOC/images/train/05690.jpg new file mode 100644 index 0000000..53ebe45 Binary files /dev/null and b/VOC/images/train/05690.jpg differ diff --git a/VOC/images/train/05700.jpg b/VOC/images/train/05700.jpg new file mode 100644 index 0000000..5f63665 Binary files /dev/null and b/VOC/images/train/05700.jpg differ diff --git a/VOC/images/train/05710.jpg b/VOC/images/train/05710.jpg new file mode 100644 index 0000000..e11a3b5 Binary files /dev/null and b/VOC/images/train/05710.jpg differ diff --git a/VOC/images/train/05720.jpg b/VOC/images/train/05720.jpg new file mode 100644 index 0000000..9671dcb Binary files /dev/null and b/VOC/images/train/05720.jpg differ diff --git a/VOC/images/train/05730.jpg b/VOC/images/train/05730.jpg new file mode 100644 index 0000000..6781cb9 Binary files /dev/null and b/VOC/images/train/05730.jpg differ diff --git a/VOC/images/train/05740.jpg b/VOC/images/train/05740.jpg new file mode 100644 index 0000000..4fcb344 Binary files /dev/null and b/VOC/images/train/05740.jpg differ diff --git a/VOC/images/train/05750.jpg b/VOC/images/train/05750.jpg new file mode 100644 index 0000000..9dafbb6 Binary files /dev/null and b/VOC/images/train/05750.jpg differ diff --git a/VOC/images/train/05760.jpg b/VOC/images/train/05760.jpg new file mode 100644 index 0000000..a5c9dee Binary files /dev/null and b/VOC/images/train/05760.jpg differ diff --git a/VOC/images/train/05770.jpg b/VOC/images/train/05770.jpg new file mode 100644 index 0000000..04629a9 Binary files /dev/null and b/VOC/images/train/05770.jpg differ diff --git a/VOC/images/train/05780.jpg b/VOC/images/train/05780.jpg new file mode 100644 index 0000000..0f19b46 Binary files /dev/null and b/VOC/images/train/05780.jpg differ diff --git a/VOC/images/train/05790.jpg b/VOC/images/train/05790.jpg new file mode 100644 index 0000000..bb8bc38 Binary files /dev/null and b/VOC/images/train/05790.jpg differ diff --git a/VOC/images/train/05800.jpg b/VOC/images/train/05800.jpg new file mode 100644 index 0000000..1504c04 Binary files /dev/null and b/VOC/images/train/05800.jpg differ diff --git a/VOC/images/train/05810.jpg b/VOC/images/train/05810.jpg new file mode 100644 index 0000000..9ad0922 Binary files /dev/null and b/VOC/images/train/05810.jpg differ diff --git a/VOC/images/train/05820.jpg b/VOC/images/train/05820.jpg new file mode 100644 index 0000000..dde1bfa Binary files /dev/null and b/VOC/images/train/05820.jpg differ diff --git a/VOC/images/train/05830.jpg b/VOC/images/train/05830.jpg new file mode 100644 index 0000000..6c5e581 Binary files /dev/null and b/VOC/images/train/05830.jpg differ diff --git a/VOC/images/train/05840.jpg b/VOC/images/train/05840.jpg new file mode 100644 index 0000000..fe1b362 Binary files /dev/null and b/VOC/images/train/05840.jpg differ diff --git a/VOC/images/train/05860.jpg b/VOC/images/train/05860.jpg new file mode 100644 index 0000000..e93681a Binary files /dev/null and b/VOC/images/train/05860.jpg differ diff --git a/VOC/images/train/05890.jpg b/VOC/images/train/05890.jpg new file mode 100644 index 0000000..85143c2 Binary files /dev/null and b/VOC/images/train/05890.jpg differ diff --git a/VOC/images/train/05900.jpg b/VOC/images/train/05900.jpg new file mode 100644 index 0000000..950bb0b Binary files /dev/null and b/VOC/images/train/05900.jpg differ diff --git a/VOC/images/train/05910.jpg b/VOC/images/train/05910.jpg new file mode 100644 index 0000000..bf20f72 Binary files /dev/null and b/VOC/images/train/05910.jpg differ diff --git a/VOC/images/train/05920.jpg b/VOC/images/train/05920.jpg new file mode 100644 index 0000000..f4e4310 Binary files /dev/null and b/VOC/images/train/05920.jpg differ diff --git a/VOC/images/train/05930.jpg b/VOC/images/train/05930.jpg new file mode 100644 index 0000000..d937d1a Binary files /dev/null and b/VOC/images/train/05930.jpg differ diff --git a/VOC/images/train/05940.jpg b/VOC/images/train/05940.jpg new file mode 100644 index 0000000..761b69a Binary files /dev/null and b/VOC/images/train/05940.jpg differ diff --git a/VOC/images/train/05950.jpg b/VOC/images/train/05950.jpg new file mode 100644 index 0000000..c1aaa04 Binary files /dev/null and b/VOC/images/train/05950.jpg differ diff --git a/VOC/images/train/05960.jpg b/VOC/images/train/05960.jpg new file mode 100644 index 0000000..601928d Binary files /dev/null and b/VOC/images/train/05960.jpg differ diff --git a/VOC/images/train/05970.jpg b/VOC/images/train/05970.jpg new file mode 100644 index 0000000..7121098 Binary files /dev/null and b/VOC/images/train/05970.jpg differ diff --git a/VOC/images/train/05980.jpg b/VOC/images/train/05980.jpg new file mode 100644 index 0000000..d921c14 Binary files /dev/null and b/VOC/images/train/05980.jpg differ diff --git a/VOC/images/train/05990.jpg b/VOC/images/train/05990.jpg new file mode 100644 index 0000000..80f0329 Binary files /dev/null and b/VOC/images/train/05990.jpg differ diff --git a/VOC/images/train/06010.jpg b/VOC/images/train/06010.jpg new file mode 100644 index 0000000..8cd1805 Binary files /dev/null and b/VOC/images/train/06010.jpg differ diff --git a/VOC/images/train/06020.jpg b/VOC/images/train/06020.jpg new file mode 100644 index 0000000..ee11930 Binary files /dev/null and b/VOC/images/train/06020.jpg differ diff --git a/VOC/images/train/06030.jpg b/VOC/images/train/06030.jpg new file mode 100644 index 0000000..2998b72 Binary files /dev/null and b/VOC/images/train/06030.jpg differ diff --git a/VOC/images/train/06040.jpg b/VOC/images/train/06040.jpg new file mode 100644 index 0000000..2a2a4e5 Binary files /dev/null and b/VOC/images/train/06040.jpg differ diff --git a/VOC/images/train/06050.jpg b/VOC/images/train/06050.jpg new file mode 100644 index 0000000..a137366 Binary files /dev/null and b/VOC/images/train/06050.jpg differ diff --git a/VOC/images/train/06060.jpg b/VOC/images/train/06060.jpg new file mode 100644 index 0000000..53b4f5c Binary files /dev/null and b/VOC/images/train/06060.jpg differ diff --git a/VOC/images/train/06070.jpg b/VOC/images/train/06070.jpg new file mode 100644 index 0000000..c4e4ec2 Binary files /dev/null and b/VOC/images/train/06070.jpg differ diff --git a/VOC/images/train/06080.jpg b/VOC/images/train/06080.jpg new file mode 100644 index 0000000..38b19c6 Binary files /dev/null and b/VOC/images/train/06080.jpg differ diff --git a/VOC/images/train/06090.jpg b/VOC/images/train/06090.jpg new file mode 100644 index 0000000..f03841e Binary files /dev/null and b/VOC/images/train/06090.jpg differ diff --git a/VOC/images/train/06100.jpg b/VOC/images/train/06100.jpg new file mode 100644 index 0000000..d473707 Binary files /dev/null and b/VOC/images/train/06100.jpg differ diff --git a/VOC/images/train/06110.jpg b/VOC/images/train/06110.jpg new file mode 100644 index 0000000..976de49 Binary files /dev/null and b/VOC/images/train/06110.jpg differ diff --git a/VOC/images/train/06120.jpg b/VOC/images/train/06120.jpg new file mode 100644 index 0000000..2cf50ae Binary files /dev/null and b/VOC/images/train/06120.jpg differ diff --git a/VOC/images/train/06130.jpg b/VOC/images/train/06130.jpg new file mode 100644 index 0000000..455cd92 Binary files /dev/null and b/VOC/images/train/06130.jpg differ diff --git a/VOC/images/train/06140.jpg b/VOC/images/train/06140.jpg new file mode 100644 index 0000000..781e9d7 Binary files /dev/null and b/VOC/images/train/06140.jpg differ diff --git a/VOC/images/train/06150.jpg b/VOC/images/train/06150.jpg new file mode 100644 index 0000000..7186e7e Binary files /dev/null and b/VOC/images/train/06150.jpg differ diff --git a/VOC/images/train/06160.jpg b/VOC/images/train/06160.jpg new file mode 100644 index 0000000..87829d0 Binary files /dev/null and b/VOC/images/train/06160.jpg differ diff --git a/VOC/images/train/06170.jpg b/VOC/images/train/06170.jpg new file mode 100644 index 0000000..4ed46a6 Binary files /dev/null and b/VOC/images/train/06170.jpg differ diff --git a/VOC/images/train/06180.jpg b/VOC/images/train/06180.jpg new file mode 100644 index 0000000..4b2e888 Binary files /dev/null and b/VOC/images/train/06180.jpg differ diff --git a/VOC/images/train/06200.jpg b/VOC/images/train/06200.jpg new file mode 100644 index 0000000..3834704 Binary files /dev/null and b/VOC/images/train/06200.jpg differ diff --git a/VOC/images/train/06210.jpg b/VOC/images/train/06210.jpg new file mode 100644 index 0000000..0e096f9 Binary files /dev/null and b/VOC/images/train/06210.jpg differ diff --git a/VOC/images/train/06220.jpg b/VOC/images/train/06220.jpg new file mode 100644 index 0000000..92bdbb3 Binary files /dev/null and b/VOC/images/train/06220.jpg differ diff --git a/VOC/images/train/06230.jpg b/VOC/images/train/06230.jpg new file mode 100644 index 0000000..50c0cf1 Binary files /dev/null and b/VOC/images/train/06230.jpg differ diff --git a/VOC/images/train/06250.jpg b/VOC/images/train/06250.jpg new file mode 100644 index 0000000..8b77fd7 Binary files /dev/null and b/VOC/images/train/06250.jpg differ diff --git a/VOC/images/train/06260.jpg b/VOC/images/train/06260.jpg new file mode 100644 index 0000000..eac49f1 Binary files /dev/null and b/VOC/images/train/06260.jpg differ diff --git a/VOC/images/train/06270.jpg b/VOC/images/train/06270.jpg new file mode 100644 index 0000000..6d6eead Binary files /dev/null and b/VOC/images/train/06270.jpg differ diff --git a/VOC/images/train/06280.jpg b/VOC/images/train/06280.jpg new file mode 100644 index 0000000..328a66b Binary files /dev/null and b/VOC/images/train/06280.jpg differ diff --git a/VOC/images/train/06290.jpg b/VOC/images/train/06290.jpg new file mode 100644 index 0000000..de4c73e Binary files /dev/null and b/VOC/images/train/06290.jpg differ diff --git a/VOC/images/train/06300.jpg b/VOC/images/train/06300.jpg new file mode 100644 index 0000000..1ac903f Binary files /dev/null and b/VOC/images/train/06300.jpg differ diff --git a/VOC/images/train/06310.jpg b/VOC/images/train/06310.jpg new file mode 100644 index 0000000..5db5bf1 Binary files /dev/null and b/VOC/images/train/06310.jpg differ diff --git a/VOC/images/train/06320.jpg b/VOC/images/train/06320.jpg new file mode 100644 index 0000000..a824c8d Binary files /dev/null and b/VOC/images/train/06320.jpg differ diff --git a/VOC/images/train/06330.jpg b/VOC/images/train/06330.jpg new file mode 100644 index 0000000..9e4cc84 Binary files /dev/null and b/VOC/images/train/06330.jpg differ diff --git a/VOC/images/train/06340.jpg b/VOC/images/train/06340.jpg new file mode 100644 index 0000000..ec4d500 Binary files /dev/null and b/VOC/images/train/06340.jpg differ diff --git a/VOC/images/train/06350.jpg b/VOC/images/train/06350.jpg new file mode 100644 index 0000000..d0c543d Binary files /dev/null and b/VOC/images/train/06350.jpg differ diff --git a/VOC/images/train/06360.jpg b/VOC/images/train/06360.jpg new file mode 100644 index 0000000..ebaf74e Binary files /dev/null and b/VOC/images/train/06360.jpg differ diff --git a/VOC/images/train/06370.jpg b/VOC/images/train/06370.jpg new file mode 100644 index 0000000..a687b12 Binary files /dev/null and b/VOC/images/train/06370.jpg differ diff --git a/VOC/images/train/06380.jpg b/VOC/images/train/06380.jpg new file mode 100644 index 0000000..eb6c291 Binary files /dev/null and b/VOC/images/train/06380.jpg differ diff --git a/VOC/images/train/06390.jpg b/VOC/images/train/06390.jpg new file mode 100644 index 0000000..8b924b2 Binary files /dev/null and b/VOC/images/train/06390.jpg differ diff --git a/VOC/images/train/06400.jpg b/VOC/images/train/06400.jpg new file mode 100644 index 0000000..300c02c Binary files /dev/null and b/VOC/images/train/06400.jpg differ diff --git a/VOC/images/train/06410.jpg b/VOC/images/train/06410.jpg new file mode 100644 index 0000000..41d47cb Binary files /dev/null and b/VOC/images/train/06410.jpg differ diff --git a/VOC/images/train/06420.jpg b/VOC/images/train/06420.jpg new file mode 100644 index 0000000..4452d36 Binary files /dev/null and b/VOC/images/train/06420.jpg differ diff --git a/VOC/images/train/06440.jpg b/VOC/images/train/06440.jpg new file mode 100644 index 0000000..3a4cb14 Binary files /dev/null and b/VOC/images/train/06440.jpg differ diff --git a/VOC/images/train/06450.jpg b/VOC/images/train/06450.jpg new file mode 100644 index 0000000..f99f708 Binary files /dev/null and b/VOC/images/train/06450.jpg differ diff --git a/VOC/images/train/06460.jpg b/VOC/images/train/06460.jpg new file mode 100644 index 0000000..2781d0a Binary files /dev/null and b/VOC/images/train/06460.jpg differ diff --git a/VOC/images/train/06470.jpg b/VOC/images/train/06470.jpg new file mode 100644 index 0000000..dddec1b Binary files /dev/null and b/VOC/images/train/06470.jpg differ diff --git a/VOC/images/train/06490.jpg b/VOC/images/train/06490.jpg new file mode 100644 index 0000000..a751919 Binary files /dev/null and b/VOC/images/train/06490.jpg differ diff --git a/VOC/images/train/06500.jpg b/VOC/images/train/06500.jpg new file mode 100644 index 0000000..7318660 Binary files /dev/null and b/VOC/images/train/06500.jpg differ diff --git a/VOC/images/val/0000.jpg b/VOC/images/val/0000.jpg new file mode 100644 index 0000000..243c08a Binary files /dev/null and b/VOC/images/val/0000.jpg differ diff --git a/VOC/images/val/00000.jpg b/VOC/images/val/00000.jpg new file mode 100644 index 0000000..f69266b Binary files /dev/null and b/VOC/images/val/00000.jpg differ diff --git a/VOC/images/val/0001.jpg b/VOC/images/val/0001.jpg new file mode 100644 index 0000000..72411c8 Binary files /dev/null and b/VOC/images/val/0001.jpg differ diff --git a/VOC/images/val/00010.jpg b/VOC/images/val/00010.jpg new file mode 100644 index 0000000..63d41b5 Binary files /dev/null and b/VOC/images/val/00010.jpg differ diff --git a/VOC/images/val/0003.jpg b/VOC/images/val/0003.jpg new file mode 100644 index 0000000..5aa6b16 Binary files /dev/null and b/VOC/images/val/0003.jpg differ diff --git a/VOC/images/val/00030.jpg b/VOC/images/val/00030.jpg new file mode 100644 index 0000000..4f954c7 Binary files /dev/null and b/VOC/images/val/00030.jpg differ diff --git a/VOC/images/val/0004.jpg b/VOC/images/val/0004.jpg new file mode 100644 index 0000000..82ab1cb Binary files /dev/null and b/VOC/images/val/0004.jpg differ diff --git a/VOC/images/val/0006.jpg b/VOC/images/val/0006.jpg new file mode 100644 index 0000000..443a9ea Binary files /dev/null and b/VOC/images/val/0006.jpg differ diff --git a/VOC/images/val/00060.jpg b/VOC/images/val/00060.jpg new file mode 100644 index 0000000..acc0f3b Binary files /dev/null and b/VOC/images/val/00060.jpg differ diff --git a/VOC/images/val/0007.jpg b/VOC/images/val/0007.jpg new file mode 100644 index 0000000..b1ab1ae Binary files /dev/null and b/VOC/images/val/0007.jpg differ diff --git a/VOC/images/val/00070.jpg b/VOC/images/val/00070.jpg new file mode 100644 index 0000000..037d5b3 Binary files /dev/null and b/VOC/images/val/00070.jpg differ diff --git a/VOC/images/val/0009.jpg b/VOC/images/val/0009.jpg new file mode 100644 index 0000000..5399bec Binary files /dev/null and b/VOC/images/val/0009.jpg differ diff --git a/VOC/images/val/0010.jpg b/VOC/images/val/0010.jpg new file mode 100644 index 0000000..a0425df Binary files /dev/null and b/VOC/images/val/0010.jpg differ diff --git a/VOC/images/val/00100.jpg b/VOC/images/val/00100.jpg new file mode 100644 index 0000000..bc75ff3 Binary files /dev/null and b/VOC/images/val/00100.jpg differ diff --git a/VOC/images/val/00130.jpg b/VOC/images/val/00130.jpg new file mode 100644 index 0000000..250cd3b Binary files /dev/null and b/VOC/images/val/00130.jpg differ diff --git a/VOC/images/val/0015.jpg b/VOC/images/val/0015.jpg new file mode 100644 index 0000000..1ff0ce2 Binary files /dev/null and b/VOC/images/val/0015.jpg differ diff --git a/VOC/images/val/0016.jpg b/VOC/images/val/0016.jpg new file mode 100644 index 0000000..eda0e77 Binary files /dev/null and b/VOC/images/val/0016.jpg differ diff --git a/VOC/images/val/0017.jpg b/VOC/images/val/0017.jpg new file mode 100644 index 0000000..815d0f0 Binary files /dev/null and b/VOC/images/val/0017.jpg differ diff --git a/VOC/images/val/0018.jpg b/VOC/images/val/0018.jpg new file mode 100644 index 0000000..ddaa0b4 Binary files /dev/null and b/VOC/images/val/0018.jpg differ diff --git a/VOC/images/val/0021.jpg b/VOC/images/val/0021.jpg new file mode 100644 index 0000000..8869829 Binary files /dev/null and b/VOC/images/val/0021.jpg differ diff --git a/VOC/images/val/0023.jpg b/VOC/images/val/0023.jpg new file mode 100644 index 0000000..85e2cab Binary files /dev/null and b/VOC/images/val/0023.jpg differ diff --git a/VOC/images/val/0025.jpg b/VOC/images/val/0025.jpg new file mode 100644 index 0000000..1aa6b3b Binary files /dev/null and b/VOC/images/val/0025.jpg differ diff --git a/VOC/images/val/0026.jpg b/VOC/images/val/0026.jpg new file mode 100644 index 0000000..b5f2aef Binary files /dev/null and b/VOC/images/val/0026.jpg differ diff --git a/VOC/images/val/0027.jpg b/VOC/images/val/0027.jpg new file mode 100644 index 0000000..347eebd Binary files /dev/null and b/VOC/images/val/0027.jpg differ diff --git a/VOC/images/val/0029.jpg b/VOC/images/val/0029.jpg new file mode 100644 index 0000000..b81007a Binary files /dev/null and b/VOC/images/val/0029.jpg differ diff --git a/VOC/images/val/0032.jpg b/VOC/images/val/0032.jpg new file mode 100644 index 0000000..0ed9625 Binary files /dev/null and b/VOC/images/val/0032.jpg differ diff --git a/VOC/images/val/0033.jpg b/VOC/images/val/0033.jpg new file mode 100644 index 0000000..4418aae Binary files /dev/null and b/VOC/images/val/0033.jpg differ diff --git a/VOC/images/val/0034.jpg b/VOC/images/val/0034.jpg new file mode 100644 index 0000000..a36e2aa Binary files /dev/null and b/VOC/images/val/0034.jpg differ diff --git a/VOC/images/val/0037.jpg b/VOC/images/val/0037.jpg new file mode 100644 index 0000000..546fab6 Binary files /dev/null and b/VOC/images/val/0037.jpg differ diff --git a/VOC/images/val/0038.jpg b/VOC/images/val/0038.jpg new file mode 100644 index 0000000..75ea3ab Binary files /dev/null and b/VOC/images/val/0038.jpg differ diff --git a/VOC/images/val/0039.jpg b/VOC/images/val/0039.jpg new file mode 100644 index 0000000..c1d8d10 Binary files /dev/null and b/VOC/images/val/0039.jpg differ diff --git a/VOC/images/val/0041.jpg b/VOC/images/val/0041.jpg new file mode 100644 index 0000000..b25288b Binary files /dev/null and b/VOC/images/val/0041.jpg differ diff --git a/VOC/images/val/0042.jpg b/VOC/images/val/0042.jpg new file mode 100644 index 0000000..d0e48f2 Binary files /dev/null and b/VOC/images/val/0042.jpg differ diff --git a/VOC/images/val/0045.jpg b/VOC/images/val/0045.jpg new file mode 100644 index 0000000..f134438 Binary files /dev/null and b/VOC/images/val/0045.jpg differ diff --git a/VOC/images/val/0047.jpg b/VOC/images/val/0047.jpg new file mode 100644 index 0000000..86166f9 Binary files /dev/null and b/VOC/images/val/0047.jpg differ diff --git a/VOC/images/val/0051.jpg b/VOC/images/val/0051.jpg new file mode 100644 index 0000000..0c06d66 Binary files /dev/null and b/VOC/images/val/0051.jpg differ diff --git a/VOC/images/val/0054.jpg b/VOC/images/val/0054.jpg new file mode 100644 index 0000000..56380df Binary files /dev/null and b/VOC/images/val/0054.jpg differ diff --git a/VOC/images/val/00550.jpg b/VOC/images/val/00550.jpg new file mode 100644 index 0000000..d720931 Binary files /dev/null and b/VOC/images/val/00550.jpg differ diff --git a/VOC/images/val/00570.jpg b/VOC/images/val/00570.jpg new file mode 100644 index 0000000..303b557 Binary files /dev/null and b/VOC/images/val/00570.jpg differ diff --git a/VOC/images/val/0058.jpg b/VOC/images/val/0058.jpg new file mode 100644 index 0000000..f7d8ab8 Binary files /dev/null and b/VOC/images/val/0058.jpg differ diff --git a/VOC/images/val/0059.jpg b/VOC/images/val/0059.jpg new file mode 100644 index 0000000..9194f39 Binary files /dev/null and b/VOC/images/val/0059.jpg differ diff --git a/VOC/images/val/00590.jpg b/VOC/images/val/00590.jpg new file mode 100644 index 0000000..1920ef8 Binary files /dev/null and b/VOC/images/val/00590.jpg differ diff --git a/VOC/images/val/0060.jpg b/VOC/images/val/0060.jpg new file mode 100644 index 0000000..1c555ad Binary files /dev/null and b/VOC/images/val/0060.jpg differ diff --git a/VOC/images/val/00600.jpg b/VOC/images/val/00600.jpg new file mode 100644 index 0000000..e0bd454 Binary files /dev/null and b/VOC/images/val/00600.jpg differ diff --git a/VOC/images/val/00620.jpg b/VOC/images/val/00620.jpg new file mode 100644 index 0000000..4fe9ad7 Binary files /dev/null and b/VOC/images/val/00620.jpg differ diff --git a/VOC/images/val/0064.jpg b/VOC/images/val/0064.jpg new file mode 100644 index 0000000..d45448c Binary files /dev/null and b/VOC/images/val/0064.jpg differ diff --git a/VOC/images/val/00640.jpg b/VOC/images/val/00640.jpg new file mode 100644 index 0000000..0e33506 Binary files /dev/null and b/VOC/images/val/00640.jpg differ diff --git a/VOC/images/val/0065.jpg b/VOC/images/val/0065.jpg new file mode 100644 index 0000000..26e44b0 Binary files /dev/null and b/VOC/images/val/0065.jpg differ diff --git a/VOC/images/val/00660.jpg b/VOC/images/val/00660.jpg new file mode 100644 index 0000000..b32f539 Binary files /dev/null and b/VOC/images/val/00660.jpg differ diff --git a/VOC/images/val/0067.jpg b/VOC/images/val/0067.jpg new file mode 100644 index 0000000..23c607b Binary files /dev/null and b/VOC/images/val/0067.jpg differ diff --git a/VOC/images/val/0069.jpg b/VOC/images/val/0069.jpg new file mode 100644 index 0000000..4037804 Binary files /dev/null and b/VOC/images/val/0069.jpg differ diff --git a/VOC/images/val/00690.jpg b/VOC/images/val/00690.jpg new file mode 100644 index 0000000..fb8b9be Binary files /dev/null and b/VOC/images/val/00690.jpg differ diff --git a/VOC/images/val/00700.jpg b/VOC/images/val/00700.jpg new file mode 100644 index 0000000..75f62f4 Binary files /dev/null and b/VOC/images/val/00700.jpg differ diff --git a/VOC/images/val/0071.jpg b/VOC/images/val/0071.jpg new file mode 100644 index 0000000..6cd291c Binary files /dev/null and b/VOC/images/val/0071.jpg differ diff --git a/VOC/images/val/00710.jpg b/VOC/images/val/00710.jpg new file mode 100644 index 0000000..817052d Binary files /dev/null and b/VOC/images/val/00710.jpg differ diff --git a/VOC/images/val/0073.jpg b/VOC/images/val/0073.jpg new file mode 100644 index 0000000..1d651b7 Binary files /dev/null and b/VOC/images/val/0073.jpg differ diff --git a/VOC/images/val/00730.jpg b/VOC/images/val/00730.jpg new file mode 100644 index 0000000..e1b298a Binary files /dev/null and b/VOC/images/val/00730.jpg differ diff --git a/VOC/images/val/00740.jpg b/VOC/images/val/00740.jpg new file mode 100644 index 0000000..36d3303 Binary files /dev/null and b/VOC/images/val/00740.jpg differ diff --git a/VOC/images/val/0075.jpg b/VOC/images/val/0075.jpg new file mode 100644 index 0000000..5066a66 Binary files /dev/null and b/VOC/images/val/0075.jpg differ diff --git a/VOC/images/val/0076.jpg b/VOC/images/val/0076.jpg new file mode 100644 index 0000000..e532fce Binary files /dev/null and b/VOC/images/val/0076.jpg differ diff --git a/VOC/images/val/0078.jpg b/VOC/images/val/0078.jpg new file mode 100644 index 0000000..b2ea5be Binary files /dev/null and b/VOC/images/val/0078.jpg differ diff --git a/VOC/images/val/00780.jpg b/VOC/images/val/00780.jpg new file mode 100644 index 0000000..aac3e6b Binary files /dev/null and b/VOC/images/val/00780.jpg differ diff --git a/VOC/images/val/0081.jpg b/VOC/images/val/0081.jpg new file mode 100644 index 0000000..deea090 Binary files /dev/null and b/VOC/images/val/0081.jpg differ diff --git a/VOC/images/val/00820.jpg b/VOC/images/val/00820.jpg new file mode 100644 index 0000000..e66c2ec Binary files /dev/null and b/VOC/images/val/00820.jpg differ diff --git a/VOC/images/val/0083.jpg b/VOC/images/val/0083.jpg new file mode 100644 index 0000000..da3cbab Binary files /dev/null and b/VOC/images/val/0083.jpg differ diff --git a/VOC/images/val/0084.jpg b/VOC/images/val/0084.jpg new file mode 100644 index 0000000..c92cd21 Binary files /dev/null and b/VOC/images/val/0084.jpg differ diff --git a/VOC/images/val/00850.jpg b/VOC/images/val/00850.jpg new file mode 100644 index 0000000..2831ebd Binary files /dev/null and b/VOC/images/val/00850.jpg differ diff --git a/VOC/images/val/0086.jpg b/VOC/images/val/0086.jpg new file mode 100644 index 0000000..a7836b7 Binary files /dev/null and b/VOC/images/val/0086.jpg differ diff --git a/VOC/images/val/00860.jpg b/VOC/images/val/00860.jpg new file mode 100644 index 0000000..6f83680 Binary files /dev/null and b/VOC/images/val/00860.jpg differ diff --git a/VOC/images/val/0092.jpg b/VOC/images/val/0092.jpg new file mode 100644 index 0000000..1f23833 Binary files /dev/null and b/VOC/images/val/0092.jpg differ diff --git a/VOC/images/val/00920.jpg b/VOC/images/val/00920.jpg new file mode 100644 index 0000000..9819dd4 Binary files /dev/null and b/VOC/images/val/00920.jpg differ diff --git a/VOC/images/val/0093.jpg b/VOC/images/val/0093.jpg new file mode 100644 index 0000000..d9aeb07 Binary files /dev/null and b/VOC/images/val/0093.jpg differ diff --git a/VOC/images/val/00940.jpg b/VOC/images/val/00940.jpg new file mode 100644 index 0000000..bcaa5ce Binary files /dev/null and b/VOC/images/val/00940.jpg differ diff --git a/VOC/images/val/00960.jpg b/VOC/images/val/00960.jpg new file mode 100644 index 0000000..c8f2341 Binary files /dev/null and b/VOC/images/val/00960.jpg differ diff --git a/VOC/images/val/00970.jpg b/VOC/images/val/00970.jpg new file mode 100644 index 0000000..0f59259 Binary files /dev/null and b/VOC/images/val/00970.jpg differ diff --git a/VOC/images/val/0098.jpg b/VOC/images/val/0098.jpg new file mode 100644 index 0000000..24502d4 Binary files /dev/null and b/VOC/images/val/0098.jpg differ diff --git a/VOC/images/val/00990.jpg b/VOC/images/val/00990.jpg new file mode 100644 index 0000000..95bff24 Binary files /dev/null and b/VOC/images/val/00990.jpg differ diff --git a/VOC/images/val/01000.jpg b/VOC/images/val/01000.jpg new file mode 100644 index 0000000..fcdc58c Binary files /dev/null and b/VOC/images/val/01000.jpg differ diff --git a/VOC/images/val/0101.jpg b/VOC/images/val/0101.jpg new file mode 100644 index 0000000..60f1cca Binary files /dev/null and b/VOC/images/val/0101.jpg differ diff --git a/VOC/images/val/01020.jpg b/VOC/images/val/01020.jpg new file mode 100644 index 0000000..07b207a Binary files /dev/null and b/VOC/images/val/01020.jpg differ diff --git a/VOC/images/val/01030.jpg b/VOC/images/val/01030.jpg new file mode 100644 index 0000000..945127d Binary files /dev/null and b/VOC/images/val/01030.jpg differ diff --git a/VOC/images/val/01040.jpg b/VOC/images/val/01040.jpg new file mode 100644 index 0000000..67148d0 Binary files /dev/null and b/VOC/images/val/01040.jpg differ diff --git a/VOC/images/val/01050.jpg b/VOC/images/val/01050.jpg new file mode 100644 index 0000000..1ec686f Binary files /dev/null and b/VOC/images/val/01050.jpg differ diff --git a/VOC/images/val/01060.jpg b/VOC/images/val/01060.jpg new file mode 100644 index 0000000..cc04ae7 Binary files /dev/null and b/VOC/images/val/01060.jpg differ diff --git a/VOC/images/val/0107.jpg b/VOC/images/val/0107.jpg new file mode 100644 index 0000000..c0df404 Binary files /dev/null and b/VOC/images/val/0107.jpg differ diff --git a/VOC/images/val/01070.jpg b/VOC/images/val/01070.jpg new file mode 100644 index 0000000..a07d117 Binary files /dev/null and b/VOC/images/val/01070.jpg differ diff --git a/VOC/images/val/0108.jpg b/VOC/images/val/0108.jpg new file mode 100644 index 0000000..bd03794 Binary files /dev/null and b/VOC/images/val/0108.jpg differ diff --git a/VOC/images/val/01080.jpg b/VOC/images/val/01080.jpg new file mode 100644 index 0000000..24ada68 Binary files /dev/null and b/VOC/images/val/01080.jpg differ diff --git a/VOC/images/val/0109.jpg b/VOC/images/val/0109.jpg new file mode 100644 index 0000000..3b67ba8 Binary files /dev/null and b/VOC/images/val/0109.jpg differ diff --git a/VOC/images/val/0110.jpg b/VOC/images/val/0110.jpg new file mode 100644 index 0000000..a2addc8 Binary files /dev/null and b/VOC/images/val/0110.jpg differ diff --git a/VOC/images/val/0112.jpg b/VOC/images/val/0112.jpg new file mode 100644 index 0000000..ea961b8 Binary files /dev/null and b/VOC/images/val/0112.jpg differ diff --git a/VOC/images/val/01120.jpg b/VOC/images/val/01120.jpg new file mode 100644 index 0000000..bc1b451 Binary files /dev/null and b/VOC/images/val/01120.jpg differ diff --git a/VOC/images/val/0113.jpg b/VOC/images/val/0113.jpg new file mode 100644 index 0000000..91be3bf Binary files /dev/null and b/VOC/images/val/0113.jpg differ diff --git a/VOC/images/val/0114.jpg b/VOC/images/val/0114.jpg new file mode 100644 index 0000000..1c4c8a2 Binary files /dev/null and b/VOC/images/val/0114.jpg differ diff --git a/VOC/images/val/01150.jpg b/VOC/images/val/01150.jpg new file mode 100644 index 0000000..0d1bef6 Binary files /dev/null and b/VOC/images/val/01150.jpg differ diff --git a/VOC/images/val/0116.jpg b/VOC/images/val/0116.jpg new file mode 100644 index 0000000..e9fd742 Binary files /dev/null and b/VOC/images/val/0116.jpg differ diff --git a/VOC/images/val/01160.jpg b/VOC/images/val/01160.jpg new file mode 100644 index 0000000..1b099aa Binary files /dev/null and b/VOC/images/val/01160.jpg differ diff --git a/VOC/images/val/01170.jpg b/VOC/images/val/01170.jpg new file mode 100644 index 0000000..a9f277c Binary files /dev/null and b/VOC/images/val/01170.jpg differ diff --git a/VOC/images/val/01200.jpg b/VOC/images/val/01200.jpg new file mode 100644 index 0000000..ea83d8d Binary files /dev/null and b/VOC/images/val/01200.jpg differ diff --git a/VOC/images/val/0121.jpg b/VOC/images/val/0121.jpg new file mode 100644 index 0000000..b1ce01e Binary files /dev/null and b/VOC/images/val/0121.jpg differ diff --git a/VOC/images/val/01220.jpg b/VOC/images/val/01220.jpg new file mode 100644 index 0000000..37f0af9 Binary files /dev/null and b/VOC/images/val/01220.jpg differ diff --git a/VOC/images/val/0124.jpg b/VOC/images/val/0124.jpg new file mode 100644 index 0000000..f476b40 Binary files /dev/null and b/VOC/images/val/0124.jpg differ diff --git a/VOC/images/val/0125.jpg b/VOC/images/val/0125.jpg new file mode 100644 index 0000000..656330a Binary files /dev/null and b/VOC/images/val/0125.jpg differ diff --git a/VOC/images/val/0126.jpg b/VOC/images/val/0126.jpg new file mode 100644 index 0000000..793e64f Binary files /dev/null and b/VOC/images/val/0126.jpg differ diff --git a/VOC/images/val/01260.jpg b/VOC/images/val/01260.jpg new file mode 100644 index 0000000..730f153 Binary files /dev/null and b/VOC/images/val/01260.jpg differ diff --git a/VOC/images/val/0127.jpg b/VOC/images/val/0127.jpg new file mode 100644 index 0000000..d2316d0 Binary files /dev/null and b/VOC/images/val/0127.jpg differ diff --git a/VOC/images/val/0128.jpg b/VOC/images/val/0128.jpg new file mode 100644 index 0000000..1332f88 Binary files /dev/null and b/VOC/images/val/0128.jpg differ diff --git a/VOC/images/val/01310.jpg b/VOC/images/val/01310.jpg new file mode 100644 index 0000000..a692213 Binary files /dev/null and b/VOC/images/val/01310.jpg differ diff --git a/VOC/images/val/01330.jpg b/VOC/images/val/01330.jpg new file mode 100644 index 0000000..ed5a59c Binary files /dev/null and b/VOC/images/val/01330.jpg differ diff --git a/VOC/images/val/01350.jpg b/VOC/images/val/01350.jpg new file mode 100644 index 0000000..f2c2fe1 Binary files /dev/null and b/VOC/images/val/01350.jpg differ diff --git a/VOC/images/val/01360.jpg b/VOC/images/val/01360.jpg new file mode 100644 index 0000000..9b38c3b Binary files /dev/null and b/VOC/images/val/01360.jpg differ diff --git a/VOC/images/val/01380.jpg b/VOC/images/val/01380.jpg new file mode 100644 index 0000000..e7ac2f6 Binary files /dev/null and b/VOC/images/val/01380.jpg differ diff --git a/VOC/images/val/01400.jpg b/VOC/images/val/01400.jpg new file mode 100644 index 0000000..8a4b228 Binary files /dev/null and b/VOC/images/val/01400.jpg differ diff --git a/VOC/images/val/01410.jpg b/VOC/images/val/01410.jpg new file mode 100644 index 0000000..a89997b Binary files /dev/null and b/VOC/images/val/01410.jpg differ diff --git a/VOC/images/val/01420.jpg b/VOC/images/val/01420.jpg new file mode 100644 index 0000000..c48b979 Binary files /dev/null and b/VOC/images/val/01420.jpg differ diff --git a/VOC/images/val/01450.jpg b/VOC/images/val/01450.jpg new file mode 100644 index 0000000..69442ec Binary files /dev/null and b/VOC/images/val/01450.jpg differ diff --git a/VOC/images/val/01460.jpg b/VOC/images/val/01460.jpg new file mode 100644 index 0000000..2eba945 Binary files /dev/null and b/VOC/images/val/01460.jpg differ diff --git a/VOC/images/val/01470.jpg b/VOC/images/val/01470.jpg new file mode 100644 index 0000000..0d071ec Binary files /dev/null and b/VOC/images/val/01470.jpg differ diff --git a/VOC/images/val/01500.jpg b/VOC/images/val/01500.jpg new file mode 100644 index 0000000..5c46857 Binary files /dev/null and b/VOC/images/val/01500.jpg differ diff --git a/VOC/images/val/01530.jpg b/VOC/images/val/01530.jpg new file mode 100644 index 0000000..8f0fd47 Binary files /dev/null and b/VOC/images/val/01530.jpg differ diff --git a/VOC/images/val/01550.jpg b/VOC/images/val/01550.jpg new file mode 100644 index 0000000..146b2a2 Binary files /dev/null and b/VOC/images/val/01550.jpg differ diff --git a/VOC/images/val/01560.jpg b/VOC/images/val/01560.jpg new file mode 100644 index 0000000..ad6de5c Binary files /dev/null and b/VOC/images/val/01560.jpg differ diff --git a/VOC/images/val/01580.jpg b/VOC/images/val/01580.jpg new file mode 100644 index 0000000..3906ed7 Binary files /dev/null and b/VOC/images/val/01580.jpg differ diff --git a/VOC/images/val/01590.jpg b/VOC/images/val/01590.jpg new file mode 100644 index 0000000..cd97e8b Binary files /dev/null and b/VOC/images/val/01590.jpg differ diff --git a/VOC/images/val/01610.jpg b/VOC/images/val/01610.jpg new file mode 100644 index 0000000..4430422 Binary files /dev/null and b/VOC/images/val/01610.jpg differ diff --git a/VOC/images/val/01620.jpg b/VOC/images/val/01620.jpg new file mode 100644 index 0000000..342807b Binary files /dev/null and b/VOC/images/val/01620.jpg differ diff --git a/VOC/images/val/01630.jpg b/VOC/images/val/01630.jpg new file mode 100644 index 0000000..164d617 Binary files /dev/null and b/VOC/images/val/01630.jpg differ diff --git a/VOC/images/val/01640.jpg b/VOC/images/val/01640.jpg new file mode 100644 index 0000000..4f67a22 Binary files /dev/null and b/VOC/images/val/01640.jpg differ diff --git a/VOC/images/val/01650.jpg b/VOC/images/val/01650.jpg new file mode 100644 index 0000000..b5fd2c8 Binary files /dev/null and b/VOC/images/val/01650.jpg differ diff --git a/VOC/images/val/01660.jpg b/VOC/images/val/01660.jpg new file mode 100644 index 0000000..5a75558 Binary files /dev/null and b/VOC/images/val/01660.jpg differ diff --git a/VOC/images/val/01670.jpg b/VOC/images/val/01670.jpg new file mode 100644 index 0000000..c6f8cd2 Binary files /dev/null and b/VOC/images/val/01670.jpg differ diff --git a/VOC/images/val/01680.jpg b/VOC/images/val/01680.jpg new file mode 100644 index 0000000..2b4291e Binary files /dev/null and b/VOC/images/val/01680.jpg differ diff --git a/VOC/images/val/01690.jpg b/VOC/images/val/01690.jpg new file mode 100644 index 0000000..6c47e0d Binary files /dev/null and b/VOC/images/val/01690.jpg differ diff --git a/VOC/images/val/01700.jpg b/VOC/images/val/01700.jpg new file mode 100644 index 0000000..a9cd6fd Binary files /dev/null and b/VOC/images/val/01700.jpg differ diff --git a/VOC/images/val/01710.jpg b/VOC/images/val/01710.jpg new file mode 100644 index 0000000..f1cbc41 Binary files /dev/null and b/VOC/images/val/01710.jpg differ diff --git a/VOC/images/val/01730.jpg b/VOC/images/val/01730.jpg new file mode 100644 index 0000000..a179931 Binary files /dev/null and b/VOC/images/val/01730.jpg differ diff --git a/VOC/images/val/01740.jpg b/VOC/images/val/01740.jpg new file mode 100644 index 0000000..8988161 Binary files /dev/null and b/VOC/images/val/01740.jpg differ diff --git a/VOC/images/val/01760.jpg b/VOC/images/val/01760.jpg new file mode 100644 index 0000000..703bb6d Binary files /dev/null and b/VOC/images/val/01760.jpg differ diff --git a/VOC/images/val/01770.jpg b/VOC/images/val/01770.jpg new file mode 100644 index 0000000..4f31a3a Binary files /dev/null and b/VOC/images/val/01770.jpg differ diff --git a/VOC/images/val/01780.jpg b/VOC/images/val/01780.jpg new file mode 100644 index 0000000..c0ae9a1 Binary files /dev/null and b/VOC/images/val/01780.jpg differ diff --git a/VOC/images/val/01800.jpg b/VOC/images/val/01800.jpg new file mode 100644 index 0000000..04974a6 Binary files /dev/null and b/VOC/images/val/01800.jpg differ diff --git a/VOC/images/val/01870.jpg b/VOC/images/val/01870.jpg new file mode 100644 index 0000000..0a8d2a0 Binary files /dev/null and b/VOC/images/val/01870.jpg differ diff --git a/VOC/images/val/01890.jpg b/VOC/images/val/01890.jpg new file mode 100644 index 0000000..c8bcb42 Binary files /dev/null and b/VOC/images/val/01890.jpg differ diff --git a/VOC/images/val/01900.jpg b/VOC/images/val/01900.jpg new file mode 100644 index 0000000..fc0d150 Binary files /dev/null and b/VOC/images/val/01900.jpg differ diff --git a/VOC/images/val/01910.jpg b/VOC/images/val/01910.jpg new file mode 100644 index 0000000..4cef5f7 Binary files /dev/null and b/VOC/images/val/01910.jpg differ diff --git a/VOC/images/val/01920.jpg b/VOC/images/val/01920.jpg new file mode 100644 index 0000000..f6193c5 Binary files /dev/null and b/VOC/images/val/01920.jpg differ diff --git a/VOC/images/val/01960.jpg b/VOC/images/val/01960.jpg new file mode 100644 index 0000000..f7fd385 Binary files /dev/null and b/VOC/images/val/01960.jpg differ diff --git a/VOC/images/val/01970.jpg b/VOC/images/val/01970.jpg new file mode 100644 index 0000000..ac51033 Binary files /dev/null and b/VOC/images/val/01970.jpg differ diff --git a/VOC/images/val/01980.jpg b/VOC/images/val/01980.jpg new file mode 100644 index 0000000..7ae5349 Binary files /dev/null and b/VOC/images/val/01980.jpg differ diff --git a/VOC/images/val/01990.jpg b/VOC/images/val/01990.jpg new file mode 100644 index 0000000..0f6d66f Binary files /dev/null and b/VOC/images/val/01990.jpg differ diff --git a/VOC/images/val/02040.jpg b/VOC/images/val/02040.jpg new file mode 100644 index 0000000..8a7df18 Binary files /dev/null and b/VOC/images/val/02040.jpg differ diff --git a/VOC/images/val/02080.jpg b/VOC/images/val/02080.jpg new file mode 100644 index 0000000..023aa61 Binary files /dev/null and b/VOC/images/val/02080.jpg differ diff --git a/VOC/images/val/02100.jpg b/VOC/images/val/02100.jpg new file mode 100644 index 0000000..0f20009 Binary files /dev/null and b/VOC/images/val/02100.jpg differ diff --git a/VOC/images/val/02130.jpg b/VOC/images/val/02130.jpg new file mode 100644 index 0000000..69d537d Binary files /dev/null and b/VOC/images/val/02130.jpg differ diff --git a/VOC/images/val/02140.jpg b/VOC/images/val/02140.jpg new file mode 100644 index 0000000..cdaccaf Binary files /dev/null and b/VOC/images/val/02140.jpg differ diff --git a/VOC/images/val/02160.jpg b/VOC/images/val/02160.jpg new file mode 100644 index 0000000..b209353 Binary files /dev/null and b/VOC/images/val/02160.jpg differ diff --git a/VOC/images/val/02170.jpg b/VOC/images/val/02170.jpg new file mode 100644 index 0000000..c538808 Binary files /dev/null and b/VOC/images/val/02170.jpg differ diff --git a/VOC/images/val/02210.jpg b/VOC/images/val/02210.jpg new file mode 100644 index 0000000..b14339c Binary files /dev/null and b/VOC/images/val/02210.jpg differ diff --git a/VOC/images/val/02240.jpg b/VOC/images/val/02240.jpg new file mode 100644 index 0000000..dda143a Binary files /dev/null and b/VOC/images/val/02240.jpg differ diff --git a/VOC/images/val/02260.jpg b/VOC/images/val/02260.jpg new file mode 100644 index 0000000..4e22b49 Binary files /dev/null and b/VOC/images/val/02260.jpg differ diff --git a/VOC/images/val/02280.jpg b/VOC/images/val/02280.jpg new file mode 100644 index 0000000..a30288a Binary files /dev/null and b/VOC/images/val/02280.jpg differ diff --git a/VOC/images/val/02290.jpg b/VOC/images/val/02290.jpg new file mode 100644 index 0000000..d2154c0 Binary files /dev/null and b/VOC/images/val/02290.jpg differ diff --git a/VOC/images/val/02300.jpg b/VOC/images/val/02300.jpg new file mode 100644 index 0000000..ee819a6 Binary files /dev/null and b/VOC/images/val/02300.jpg differ diff --git a/VOC/images/val/02310.jpg b/VOC/images/val/02310.jpg new file mode 100644 index 0000000..b8d2a10 Binary files /dev/null and b/VOC/images/val/02310.jpg differ diff --git a/VOC/images/val/02340.jpg b/VOC/images/val/02340.jpg new file mode 100644 index 0000000..14e99c3 Binary files /dev/null and b/VOC/images/val/02340.jpg differ diff --git a/VOC/images/val/02350.jpg b/VOC/images/val/02350.jpg new file mode 100644 index 0000000..fb3ea24 Binary files /dev/null and b/VOC/images/val/02350.jpg differ diff --git a/VOC/images/val/02370.jpg b/VOC/images/val/02370.jpg new file mode 100644 index 0000000..778bd27 Binary files /dev/null and b/VOC/images/val/02370.jpg differ diff --git a/VOC/images/val/02380.jpg b/VOC/images/val/02380.jpg new file mode 100644 index 0000000..165675f Binary files /dev/null and b/VOC/images/val/02380.jpg differ diff --git a/VOC/images/val/02400.jpg b/VOC/images/val/02400.jpg new file mode 100644 index 0000000..6ee852b Binary files /dev/null and b/VOC/images/val/02400.jpg differ diff --git a/VOC/images/val/02420.jpg b/VOC/images/val/02420.jpg new file mode 100644 index 0000000..74d0f99 Binary files /dev/null and b/VOC/images/val/02420.jpg differ diff --git a/VOC/images/val/02440.jpg b/VOC/images/val/02440.jpg new file mode 100644 index 0000000..9dd9c9f Binary files /dev/null and b/VOC/images/val/02440.jpg differ diff --git a/VOC/images/val/02450.jpg b/VOC/images/val/02450.jpg new file mode 100644 index 0000000..2b3d494 Binary files /dev/null and b/VOC/images/val/02450.jpg differ diff --git a/VOC/images/val/02490.jpg b/VOC/images/val/02490.jpg new file mode 100644 index 0000000..32b9caf Binary files /dev/null and b/VOC/images/val/02490.jpg differ diff --git a/VOC/images/val/02500.jpg b/VOC/images/val/02500.jpg new file mode 100644 index 0000000..9454f2f Binary files /dev/null and b/VOC/images/val/02500.jpg differ diff --git a/VOC/images/val/02510.jpg b/VOC/images/val/02510.jpg new file mode 100644 index 0000000..72e927f Binary files /dev/null and b/VOC/images/val/02510.jpg differ diff --git a/VOC/images/val/02520.jpg b/VOC/images/val/02520.jpg new file mode 100644 index 0000000..eb646d0 Binary files /dev/null and b/VOC/images/val/02520.jpg differ diff --git a/VOC/images/val/02530.jpg b/VOC/images/val/02530.jpg new file mode 100644 index 0000000..cfeaaa5 Binary files /dev/null and b/VOC/images/val/02530.jpg differ diff --git a/VOC/images/val/02540.jpg b/VOC/images/val/02540.jpg new file mode 100644 index 0000000..f429bea Binary files /dev/null and b/VOC/images/val/02540.jpg differ diff --git a/VOC/images/val/02570.jpg b/VOC/images/val/02570.jpg new file mode 100644 index 0000000..633cf6d Binary files /dev/null and b/VOC/images/val/02570.jpg differ diff --git a/VOC/images/val/02580.jpg b/VOC/images/val/02580.jpg new file mode 100644 index 0000000..c9cb83b Binary files /dev/null and b/VOC/images/val/02580.jpg differ diff --git a/VOC/images/val/02600.jpg b/VOC/images/val/02600.jpg new file mode 100644 index 0000000..ac16237 Binary files /dev/null and b/VOC/images/val/02600.jpg differ diff --git a/VOC/images/val/02610.jpg b/VOC/images/val/02610.jpg new file mode 100644 index 0000000..23afd1c Binary files /dev/null and b/VOC/images/val/02610.jpg differ diff --git a/VOC/images/val/02630.jpg b/VOC/images/val/02630.jpg new file mode 100644 index 0000000..853effc Binary files /dev/null and b/VOC/images/val/02630.jpg differ diff --git a/VOC/images/val/02640.jpg b/VOC/images/val/02640.jpg new file mode 100644 index 0000000..8df9caa Binary files /dev/null and b/VOC/images/val/02640.jpg differ diff --git a/VOC/images/val/02650.jpg b/VOC/images/val/02650.jpg new file mode 100644 index 0000000..0270138 Binary files /dev/null and b/VOC/images/val/02650.jpg differ diff --git a/VOC/images/val/02670.jpg b/VOC/images/val/02670.jpg new file mode 100644 index 0000000..8012cd3 Binary files /dev/null and b/VOC/images/val/02670.jpg differ diff --git a/VOC/images/val/02710.jpg b/VOC/images/val/02710.jpg new file mode 100644 index 0000000..65cf6a5 Binary files /dev/null and b/VOC/images/val/02710.jpg differ diff --git a/VOC/images/val/02720.jpg b/VOC/images/val/02720.jpg new file mode 100644 index 0000000..b76389e Binary files /dev/null and b/VOC/images/val/02720.jpg differ diff --git a/VOC/images/val/02730.jpg b/VOC/images/val/02730.jpg new file mode 100644 index 0000000..eb7ec44 Binary files /dev/null and b/VOC/images/val/02730.jpg differ diff --git a/VOC/images/val/02740.jpg b/VOC/images/val/02740.jpg new file mode 100644 index 0000000..b8b4ce2 Binary files /dev/null and b/VOC/images/val/02740.jpg differ diff --git a/VOC/images/val/02750.jpg b/VOC/images/val/02750.jpg new file mode 100644 index 0000000..35aba36 Binary files /dev/null and b/VOC/images/val/02750.jpg differ diff --git a/VOC/images/val/02760.jpg b/VOC/images/val/02760.jpg new file mode 100644 index 0000000..dbc3995 Binary files /dev/null and b/VOC/images/val/02760.jpg differ diff --git a/VOC/images/val/02780.jpg b/VOC/images/val/02780.jpg new file mode 100644 index 0000000..c97a230 Binary files /dev/null and b/VOC/images/val/02780.jpg differ diff --git a/VOC/images/val/02800.jpg b/VOC/images/val/02800.jpg new file mode 100644 index 0000000..9e6e910 Binary files /dev/null and b/VOC/images/val/02800.jpg differ diff --git a/VOC/images/val/02810.jpg b/VOC/images/val/02810.jpg new file mode 100644 index 0000000..97e4824 Binary files /dev/null and b/VOC/images/val/02810.jpg differ diff --git a/VOC/images/val/02840.jpg b/VOC/images/val/02840.jpg new file mode 100644 index 0000000..bf697af Binary files /dev/null and b/VOC/images/val/02840.jpg differ diff --git a/VOC/images/val/02850.jpg b/VOC/images/val/02850.jpg new file mode 100644 index 0000000..2ee8ebb Binary files /dev/null and b/VOC/images/val/02850.jpg differ diff --git a/VOC/images/val/02860.jpg b/VOC/images/val/02860.jpg new file mode 100644 index 0000000..29d6fff Binary files /dev/null and b/VOC/images/val/02860.jpg differ diff --git a/VOC/images/val/02880.jpg b/VOC/images/val/02880.jpg new file mode 100644 index 0000000..1fab4a6 Binary files /dev/null and b/VOC/images/val/02880.jpg differ diff --git a/VOC/images/val/02890.jpg b/VOC/images/val/02890.jpg new file mode 100644 index 0000000..ca0c356 Binary files /dev/null and b/VOC/images/val/02890.jpg differ diff --git a/VOC/images/val/02900.jpg b/VOC/images/val/02900.jpg new file mode 100644 index 0000000..b6eb47e Binary files /dev/null and b/VOC/images/val/02900.jpg differ diff --git a/VOC/images/val/02910.jpg b/VOC/images/val/02910.jpg new file mode 100644 index 0000000..ba9676f Binary files /dev/null and b/VOC/images/val/02910.jpg differ diff --git a/VOC/images/val/02920.jpg b/VOC/images/val/02920.jpg new file mode 100644 index 0000000..d515428 Binary files /dev/null and b/VOC/images/val/02920.jpg differ diff --git a/VOC/images/val/02930.jpg b/VOC/images/val/02930.jpg new file mode 100644 index 0000000..bc5a6a2 Binary files /dev/null and b/VOC/images/val/02930.jpg differ diff --git a/VOC/images/val/02950.jpg b/VOC/images/val/02950.jpg new file mode 100644 index 0000000..b28c8f1 Binary files /dev/null and b/VOC/images/val/02950.jpg differ diff --git a/VOC/images/val/02990.jpg b/VOC/images/val/02990.jpg new file mode 100644 index 0000000..3d62cbb Binary files /dev/null and b/VOC/images/val/02990.jpg differ diff --git a/VOC/images/val/03030.jpg b/VOC/images/val/03030.jpg new file mode 100644 index 0000000..84eb7e9 Binary files /dev/null and b/VOC/images/val/03030.jpg differ diff --git a/VOC/images/val/03050.jpg b/VOC/images/val/03050.jpg new file mode 100644 index 0000000..42e405d Binary files /dev/null and b/VOC/images/val/03050.jpg differ diff --git a/VOC/images/val/03060.jpg b/VOC/images/val/03060.jpg new file mode 100644 index 0000000..ca8f0fa Binary files /dev/null and b/VOC/images/val/03060.jpg differ diff --git a/VOC/images/val/03150.jpg b/VOC/images/val/03150.jpg new file mode 100644 index 0000000..688688a Binary files /dev/null and b/VOC/images/val/03150.jpg differ diff --git a/VOC/images/val/03170.jpg b/VOC/images/val/03170.jpg new file mode 100644 index 0000000..e285584 Binary files /dev/null and b/VOC/images/val/03170.jpg differ diff --git a/VOC/images/val/03180.jpg b/VOC/images/val/03180.jpg new file mode 100644 index 0000000..5cd7d6d Binary files /dev/null and b/VOC/images/val/03180.jpg differ diff --git a/VOC/images/val/03250.jpg b/VOC/images/val/03250.jpg new file mode 100644 index 0000000..f5b0794 Binary files /dev/null and b/VOC/images/val/03250.jpg differ diff --git a/VOC/images/val/03260.jpg b/VOC/images/val/03260.jpg new file mode 100644 index 0000000..287d6da Binary files /dev/null and b/VOC/images/val/03260.jpg differ diff --git a/VOC/images/val/03280.jpg b/VOC/images/val/03280.jpg new file mode 100644 index 0000000..9346c8b Binary files /dev/null and b/VOC/images/val/03280.jpg differ diff --git a/VOC/images/val/03290.jpg b/VOC/images/val/03290.jpg new file mode 100644 index 0000000..4e0cd76 Binary files /dev/null and b/VOC/images/val/03290.jpg differ diff --git a/VOC/images/val/03320.jpg b/VOC/images/val/03320.jpg new file mode 100644 index 0000000..b375885 Binary files /dev/null and b/VOC/images/val/03320.jpg differ diff --git a/VOC/images/val/03330.jpg b/VOC/images/val/03330.jpg new file mode 100644 index 0000000..f1f79cd Binary files /dev/null and b/VOC/images/val/03330.jpg differ diff --git a/VOC/images/val/03340.jpg b/VOC/images/val/03340.jpg new file mode 100644 index 0000000..3db8f70 Binary files /dev/null and b/VOC/images/val/03340.jpg differ diff --git a/VOC/images/val/03350.jpg b/VOC/images/val/03350.jpg new file mode 100644 index 0000000..0d15d46 Binary files /dev/null and b/VOC/images/val/03350.jpg differ diff --git a/VOC/images/val/03370.jpg b/VOC/images/val/03370.jpg new file mode 100644 index 0000000..8dbd5c5 Binary files /dev/null and b/VOC/images/val/03370.jpg differ diff --git a/VOC/images/val/03390.jpg b/VOC/images/val/03390.jpg new file mode 100644 index 0000000..bbe02b9 Binary files /dev/null and b/VOC/images/val/03390.jpg differ diff --git a/VOC/images/val/03410.jpg b/VOC/images/val/03410.jpg new file mode 100644 index 0000000..ac81195 Binary files /dev/null and b/VOC/images/val/03410.jpg differ diff --git a/VOC/images/val/03430.jpg b/VOC/images/val/03430.jpg new file mode 100644 index 0000000..04758c7 Binary files /dev/null and b/VOC/images/val/03430.jpg differ diff --git a/VOC/images/val/03440.jpg b/VOC/images/val/03440.jpg new file mode 100644 index 0000000..88b6b80 Binary files /dev/null and b/VOC/images/val/03440.jpg differ diff --git a/VOC/images/val/03460.jpg b/VOC/images/val/03460.jpg new file mode 100644 index 0000000..3aea2b4 Binary files /dev/null and b/VOC/images/val/03460.jpg differ diff --git a/VOC/images/val/03480.jpg b/VOC/images/val/03480.jpg new file mode 100644 index 0000000..a654eb0 Binary files /dev/null and b/VOC/images/val/03480.jpg differ diff --git a/VOC/images/val/03490.jpg b/VOC/images/val/03490.jpg new file mode 100644 index 0000000..0495116 Binary files /dev/null and b/VOC/images/val/03490.jpg differ diff --git a/VOC/images/val/03520.jpg b/VOC/images/val/03520.jpg new file mode 100644 index 0000000..f2888eb Binary files /dev/null and b/VOC/images/val/03520.jpg differ diff --git a/VOC/images/val/03530.jpg b/VOC/images/val/03530.jpg new file mode 100644 index 0000000..f3e1866 Binary files /dev/null and b/VOC/images/val/03530.jpg differ diff --git a/VOC/images/val/03580.jpg b/VOC/images/val/03580.jpg new file mode 100644 index 0000000..71ab5af Binary files /dev/null and b/VOC/images/val/03580.jpg differ diff --git a/VOC/images/val/03610.jpg b/VOC/images/val/03610.jpg new file mode 100644 index 0000000..2b06ca6 Binary files /dev/null and b/VOC/images/val/03610.jpg differ diff --git a/VOC/images/val/03630.jpg b/VOC/images/val/03630.jpg new file mode 100644 index 0000000..694fc0c Binary files /dev/null and b/VOC/images/val/03630.jpg differ diff --git a/VOC/images/val/03650.jpg b/VOC/images/val/03650.jpg new file mode 100644 index 0000000..e85e4b9 Binary files /dev/null and b/VOC/images/val/03650.jpg differ diff --git a/VOC/images/val/03660.jpg b/VOC/images/val/03660.jpg new file mode 100644 index 0000000..9f956e4 Binary files /dev/null and b/VOC/images/val/03660.jpg differ diff --git a/VOC/images/val/03680.jpg b/VOC/images/val/03680.jpg new file mode 100644 index 0000000..5cb2e78 Binary files /dev/null and b/VOC/images/val/03680.jpg differ diff --git a/VOC/images/val/03700.jpg b/VOC/images/val/03700.jpg new file mode 100644 index 0000000..a944053 Binary files /dev/null and b/VOC/images/val/03700.jpg differ diff --git a/VOC/images/val/03710.jpg b/VOC/images/val/03710.jpg new file mode 100644 index 0000000..8181562 Binary files /dev/null and b/VOC/images/val/03710.jpg differ diff --git a/VOC/images/val/03730.jpg b/VOC/images/val/03730.jpg new file mode 100644 index 0000000..62554e5 Binary files /dev/null and b/VOC/images/val/03730.jpg differ diff --git a/VOC/images/val/03740.jpg b/VOC/images/val/03740.jpg new file mode 100644 index 0000000..7146e11 Binary files /dev/null and b/VOC/images/val/03740.jpg differ diff --git a/VOC/images/val/03750.jpg b/VOC/images/val/03750.jpg new file mode 100644 index 0000000..8e6f56e Binary files /dev/null and b/VOC/images/val/03750.jpg differ diff --git a/VOC/images/val/03760.jpg b/VOC/images/val/03760.jpg new file mode 100644 index 0000000..ea9e3ce Binary files /dev/null and b/VOC/images/val/03760.jpg differ diff --git a/VOC/images/val/03780.jpg b/VOC/images/val/03780.jpg new file mode 100644 index 0000000..5e0f957 Binary files /dev/null and b/VOC/images/val/03780.jpg differ diff --git a/VOC/images/val/03800.jpg b/VOC/images/val/03800.jpg new file mode 100644 index 0000000..d2b66ce Binary files /dev/null and b/VOC/images/val/03800.jpg differ diff --git a/VOC/images/val/03810.jpg b/VOC/images/val/03810.jpg new file mode 100644 index 0000000..dc7ba24 Binary files /dev/null and b/VOC/images/val/03810.jpg differ diff --git a/VOC/images/val/03840.jpg b/VOC/images/val/03840.jpg new file mode 100644 index 0000000..804ad81 Binary files /dev/null and b/VOC/images/val/03840.jpg differ diff --git a/VOC/images/val/03890.jpg b/VOC/images/val/03890.jpg new file mode 100644 index 0000000..871791e Binary files /dev/null and b/VOC/images/val/03890.jpg differ diff --git a/VOC/images/val/03920.jpg b/VOC/images/val/03920.jpg new file mode 100644 index 0000000..bf1513d Binary files /dev/null and b/VOC/images/val/03920.jpg differ diff --git a/VOC/images/val/03940.jpg b/VOC/images/val/03940.jpg new file mode 100644 index 0000000..4de6b5a Binary files /dev/null and b/VOC/images/val/03940.jpg differ diff --git a/VOC/images/val/03950.jpg b/VOC/images/val/03950.jpg new file mode 100644 index 0000000..0f73e4f Binary files /dev/null and b/VOC/images/val/03950.jpg differ diff --git a/VOC/images/val/03970.jpg b/VOC/images/val/03970.jpg new file mode 100644 index 0000000..a0f6e24 Binary files /dev/null and b/VOC/images/val/03970.jpg differ diff --git a/VOC/images/val/03980.jpg b/VOC/images/val/03980.jpg new file mode 100644 index 0000000..bfb9b0d Binary files /dev/null and b/VOC/images/val/03980.jpg differ diff --git a/VOC/images/val/04000.jpg b/VOC/images/val/04000.jpg new file mode 100644 index 0000000..863f88e Binary files /dev/null and b/VOC/images/val/04000.jpg differ diff --git a/VOC/images/val/04050.jpg b/VOC/images/val/04050.jpg new file mode 100644 index 0000000..95b4377 Binary files /dev/null and b/VOC/images/val/04050.jpg differ diff --git a/VOC/images/val/04070.jpg b/VOC/images/val/04070.jpg new file mode 100644 index 0000000..890721b Binary files /dev/null and b/VOC/images/val/04070.jpg differ diff --git a/VOC/images/val/04110.jpg b/VOC/images/val/04110.jpg new file mode 100644 index 0000000..954f3e0 Binary files /dev/null and b/VOC/images/val/04110.jpg differ diff --git a/VOC/images/val/04120.jpg b/VOC/images/val/04120.jpg new file mode 100644 index 0000000..35210f8 Binary files /dev/null and b/VOC/images/val/04120.jpg differ diff --git a/VOC/images/val/04130.jpg b/VOC/images/val/04130.jpg new file mode 100644 index 0000000..30b37b0 Binary files /dev/null and b/VOC/images/val/04130.jpg differ diff --git a/VOC/images/val/04230.jpg b/VOC/images/val/04230.jpg new file mode 100644 index 0000000..54f3400 Binary files /dev/null and b/VOC/images/val/04230.jpg differ diff --git a/VOC/images/val/04240.jpg b/VOC/images/val/04240.jpg new file mode 100644 index 0000000..b7d54b2 Binary files /dev/null and b/VOC/images/val/04240.jpg differ diff --git a/VOC/images/val/04260.jpg b/VOC/images/val/04260.jpg new file mode 100644 index 0000000..2126a51 Binary files /dev/null and b/VOC/images/val/04260.jpg differ diff --git a/VOC/images/val/04290.jpg b/VOC/images/val/04290.jpg new file mode 100644 index 0000000..ca4f432 Binary files /dev/null and b/VOC/images/val/04290.jpg differ diff --git a/VOC/images/val/04300.jpg b/VOC/images/val/04300.jpg new file mode 100644 index 0000000..629f303 Binary files /dev/null and b/VOC/images/val/04300.jpg differ diff --git a/VOC/images/val/04320.jpg b/VOC/images/val/04320.jpg new file mode 100644 index 0000000..897f897 Binary files /dev/null and b/VOC/images/val/04320.jpg differ diff --git a/VOC/images/val/04330.jpg b/VOC/images/val/04330.jpg new file mode 100644 index 0000000..1bb0f66 Binary files /dev/null and b/VOC/images/val/04330.jpg differ diff --git a/VOC/images/val/04360.jpg b/VOC/images/val/04360.jpg new file mode 100644 index 0000000..c309712 Binary files /dev/null and b/VOC/images/val/04360.jpg differ diff --git a/VOC/images/val/04380.jpg b/VOC/images/val/04380.jpg new file mode 100644 index 0000000..7121767 Binary files /dev/null and b/VOC/images/val/04380.jpg differ diff --git a/VOC/images/val/04400.jpg b/VOC/images/val/04400.jpg new file mode 100644 index 0000000..b4abeb9 Binary files /dev/null and b/VOC/images/val/04400.jpg differ diff --git a/VOC/images/val/04410.jpg b/VOC/images/val/04410.jpg new file mode 100644 index 0000000..84f3b42 Binary files /dev/null and b/VOC/images/val/04410.jpg differ diff --git a/VOC/images/val/04470.jpg b/VOC/images/val/04470.jpg new file mode 100644 index 0000000..74d3d1b Binary files /dev/null and b/VOC/images/val/04470.jpg differ diff --git a/VOC/images/val/04490.jpg b/VOC/images/val/04490.jpg new file mode 100644 index 0000000..b7ca14e Binary files /dev/null and b/VOC/images/val/04490.jpg differ diff --git a/VOC/images/val/04520.jpg b/VOC/images/val/04520.jpg new file mode 100644 index 0000000..2076ad1 Binary files /dev/null and b/VOC/images/val/04520.jpg differ diff --git a/VOC/images/val/04530.jpg b/VOC/images/val/04530.jpg new file mode 100644 index 0000000..42ceb07 Binary files /dev/null and b/VOC/images/val/04530.jpg differ diff --git a/VOC/images/val/04540.jpg b/VOC/images/val/04540.jpg new file mode 100644 index 0000000..b583735 Binary files /dev/null and b/VOC/images/val/04540.jpg differ diff --git a/VOC/images/val/04550.jpg b/VOC/images/val/04550.jpg new file mode 100644 index 0000000..0960c1b Binary files /dev/null and b/VOC/images/val/04550.jpg differ diff --git a/VOC/images/val/04560.jpg b/VOC/images/val/04560.jpg new file mode 100644 index 0000000..e09c908 Binary files /dev/null and b/VOC/images/val/04560.jpg differ diff --git a/VOC/images/val/04570.jpg b/VOC/images/val/04570.jpg new file mode 100644 index 0000000..7039668 Binary files /dev/null and b/VOC/images/val/04570.jpg differ diff --git a/VOC/images/val/04580.jpg b/VOC/images/val/04580.jpg new file mode 100644 index 0000000..d69bcba Binary files /dev/null and b/VOC/images/val/04580.jpg differ diff --git a/VOC/images/val/04600.jpg b/VOC/images/val/04600.jpg new file mode 100644 index 0000000..17fab72 Binary files /dev/null and b/VOC/images/val/04600.jpg differ diff --git a/VOC/images/val/04620.jpg b/VOC/images/val/04620.jpg new file mode 100644 index 0000000..4210bf7 Binary files /dev/null and b/VOC/images/val/04620.jpg differ diff --git a/VOC/images/val/04630.jpg b/VOC/images/val/04630.jpg new file mode 100644 index 0000000..5a03303 Binary files /dev/null and b/VOC/images/val/04630.jpg differ diff --git a/VOC/images/val/04640.jpg b/VOC/images/val/04640.jpg new file mode 100644 index 0000000..6500ac9 Binary files /dev/null and b/VOC/images/val/04640.jpg differ diff --git a/VOC/images/val/04670.jpg b/VOC/images/val/04670.jpg new file mode 100644 index 0000000..a549700 Binary files /dev/null and b/VOC/images/val/04670.jpg differ diff --git a/VOC/images/val/04680.jpg b/VOC/images/val/04680.jpg new file mode 100644 index 0000000..5ae5c59 Binary files /dev/null and b/VOC/images/val/04680.jpg differ diff --git a/VOC/images/val/04700.jpg b/VOC/images/val/04700.jpg new file mode 100644 index 0000000..3c862b1 Binary files /dev/null and b/VOC/images/val/04700.jpg differ diff --git a/VOC/images/val/04710.jpg b/VOC/images/val/04710.jpg new file mode 100644 index 0000000..734d6bf Binary files /dev/null and b/VOC/images/val/04710.jpg differ diff --git a/VOC/images/val/04730.jpg b/VOC/images/val/04730.jpg new file mode 100644 index 0000000..9c47e09 Binary files /dev/null and b/VOC/images/val/04730.jpg differ diff --git a/VOC/images/val/04740.jpg b/VOC/images/val/04740.jpg new file mode 100644 index 0000000..7b100e1 Binary files /dev/null and b/VOC/images/val/04740.jpg differ diff --git a/VOC/images/val/04760.jpg b/VOC/images/val/04760.jpg new file mode 100644 index 0000000..5a6a700 Binary files /dev/null and b/VOC/images/val/04760.jpg differ diff --git a/VOC/images/val/04770.jpg b/VOC/images/val/04770.jpg new file mode 100644 index 0000000..183b9db Binary files /dev/null and b/VOC/images/val/04770.jpg differ diff --git a/VOC/images/val/04780.jpg b/VOC/images/val/04780.jpg new file mode 100644 index 0000000..cddfc1f Binary files /dev/null and b/VOC/images/val/04780.jpg differ diff --git a/VOC/images/val/04810.jpg b/VOC/images/val/04810.jpg new file mode 100644 index 0000000..f6abc4b Binary files /dev/null and b/VOC/images/val/04810.jpg differ diff --git a/VOC/images/val/04820.jpg b/VOC/images/val/04820.jpg new file mode 100644 index 0000000..95705c0 Binary files /dev/null and b/VOC/images/val/04820.jpg differ diff --git a/VOC/images/val/04840.jpg b/VOC/images/val/04840.jpg new file mode 100644 index 0000000..2792c66 Binary files /dev/null and b/VOC/images/val/04840.jpg differ diff --git a/VOC/images/val/04850.jpg b/VOC/images/val/04850.jpg new file mode 100644 index 0000000..85d73c2 Binary files /dev/null and b/VOC/images/val/04850.jpg differ diff --git a/VOC/images/val/04860.jpg b/VOC/images/val/04860.jpg new file mode 100644 index 0000000..66dfb6c Binary files /dev/null and b/VOC/images/val/04860.jpg differ diff --git a/VOC/images/val/04890.jpg b/VOC/images/val/04890.jpg new file mode 100644 index 0000000..d9790be Binary files /dev/null and b/VOC/images/val/04890.jpg differ diff --git a/VOC/images/val/04920.jpg b/VOC/images/val/04920.jpg new file mode 100644 index 0000000..17f63b3 Binary files /dev/null and b/VOC/images/val/04920.jpg differ diff --git a/VOC/images/val/04930.jpg b/VOC/images/val/04930.jpg new file mode 100644 index 0000000..a6e0309 Binary files /dev/null and b/VOC/images/val/04930.jpg differ diff --git a/VOC/images/val/04950.jpg b/VOC/images/val/04950.jpg new file mode 100644 index 0000000..c0c27db Binary files /dev/null and b/VOC/images/val/04950.jpg differ diff --git a/VOC/images/val/04960.jpg b/VOC/images/val/04960.jpg new file mode 100644 index 0000000..ff0a54d Binary files /dev/null and b/VOC/images/val/04960.jpg differ diff --git a/VOC/images/val/04980.jpg b/VOC/images/val/04980.jpg new file mode 100644 index 0000000..05ea934 Binary files /dev/null and b/VOC/images/val/04980.jpg differ diff --git a/VOC/images/val/04990.jpg b/VOC/images/val/04990.jpg new file mode 100644 index 0000000..dd30ac1 Binary files /dev/null and b/VOC/images/val/04990.jpg differ diff --git a/VOC/images/val/05020.jpg b/VOC/images/val/05020.jpg new file mode 100644 index 0000000..ceb0563 Binary files /dev/null and b/VOC/images/val/05020.jpg differ diff --git a/VOC/images/val/05050.jpg b/VOC/images/val/05050.jpg new file mode 100644 index 0000000..0e0946f Binary files /dev/null and b/VOC/images/val/05050.jpg differ diff --git a/VOC/images/val/05070.jpg b/VOC/images/val/05070.jpg new file mode 100644 index 0000000..fa13b81 Binary files /dev/null and b/VOC/images/val/05070.jpg differ diff --git a/VOC/images/val/05080.jpg b/VOC/images/val/05080.jpg new file mode 100644 index 0000000..c22f0c7 Binary files /dev/null and b/VOC/images/val/05080.jpg differ diff --git a/VOC/images/val/05100.jpg b/VOC/images/val/05100.jpg new file mode 100644 index 0000000..502007f Binary files /dev/null and b/VOC/images/val/05100.jpg differ diff --git a/VOC/images/val/05110.jpg b/VOC/images/val/05110.jpg new file mode 100644 index 0000000..3a52932 Binary files /dev/null and b/VOC/images/val/05110.jpg differ diff --git a/VOC/images/val/05120.jpg b/VOC/images/val/05120.jpg new file mode 100644 index 0000000..a2d078c Binary files /dev/null and b/VOC/images/val/05120.jpg differ diff --git a/VOC/images/val/05170.jpg b/VOC/images/val/05170.jpg new file mode 100644 index 0000000..11b1d0d Binary files /dev/null and b/VOC/images/val/05170.jpg differ diff --git a/VOC/images/val/05180.jpg b/VOC/images/val/05180.jpg new file mode 100644 index 0000000..707dd86 Binary files /dev/null and b/VOC/images/val/05180.jpg differ diff --git a/VOC/images/val/05190.jpg b/VOC/images/val/05190.jpg new file mode 100644 index 0000000..423eee7 Binary files /dev/null and b/VOC/images/val/05190.jpg differ diff --git a/VOC/images/val/05200.jpg b/VOC/images/val/05200.jpg new file mode 100644 index 0000000..4baefd4 Binary files /dev/null and b/VOC/images/val/05200.jpg differ diff --git a/VOC/images/val/05210.jpg b/VOC/images/val/05210.jpg new file mode 100644 index 0000000..945ce72 Binary files /dev/null and b/VOC/images/val/05210.jpg differ diff --git a/VOC/images/val/05230.jpg b/VOC/images/val/05230.jpg new file mode 100644 index 0000000..7e8eb09 Binary files /dev/null and b/VOC/images/val/05230.jpg differ diff --git a/VOC/images/val/05260.jpg b/VOC/images/val/05260.jpg new file mode 100644 index 0000000..8e78616 Binary files /dev/null and b/VOC/images/val/05260.jpg differ diff --git a/VOC/images/val/05270.jpg b/VOC/images/val/05270.jpg new file mode 100644 index 0000000..5d75978 Binary files /dev/null and b/VOC/images/val/05270.jpg differ diff --git a/VOC/images/val/05280.jpg b/VOC/images/val/05280.jpg new file mode 100644 index 0000000..d8d9d24 Binary files /dev/null and b/VOC/images/val/05280.jpg differ diff --git a/VOC/images/val/05290.jpg b/VOC/images/val/05290.jpg new file mode 100644 index 0000000..b9226b4 Binary files /dev/null and b/VOC/images/val/05290.jpg differ diff --git a/VOC/images/val/05310.jpg b/VOC/images/val/05310.jpg new file mode 100644 index 0000000..2bb5904 Binary files /dev/null and b/VOC/images/val/05310.jpg differ diff --git a/VOC/images/val/05320.jpg b/VOC/images/val/05320.jpg new file mode 100644 index 0000000..c45769e Binary files /dev/null and b/VOC/images/val/05320.jpg differ diff --git a/VOC/images/val/05330.jpg b/VOC/images/val/05330.jpg new file mode 100644 index 0000000..d142014 Binary files /dev/null and b/VOC/images/val/05330.jpg differ diff --git a/VOC/images/val/05350.jpg b/VOC/images/val/05350.jpg new file mode 100644 index 0000000..4a1d44f Binary files /dev/null and b/VOC/images/val/05350.jpg differ diff --git a/VOC/images/val/05360.jpg b/VOC/images/val/05360.jpg new file mode 100644 index 0000000..acc9044 Binary files /dev/null and b/VOC/images/val/05360.jpg differ diff --git a/VOC/images/val/05370.jpg b/VOC/images/val/05370.jpg new file mode 100644 index 0000000..d390646 Binary files /dev/null and b/VOC/images/val/05370.jpg differ diff --git a/VOC/images/val/05400.jpg b/VOC/images/val/05400.jpg new file mode 100644 index 0000000..9a40ca8 Binary files /dev/null and b/VOC/images/val/05400.jpg differ diff --git a/VOC/images/val/05420.jpg b/VOC/images/val/05420.jpg new file mode 100644 index 0000000..47d07cc Binary files /dev/null and b/VOC/images/val/05420.jpg differ diff --git a/VOC/images/val/05430.jpg b/VOC/images/val/05430.jpg new file mode 100644 index 0000000..96cbcdd Binary files /dev/null and b/VOC/images/val/05430.jpg differ diff --git a/VOC/images/val/05440.jpg b/VOC/images/val/05440.jpg new file mode 100644 index 0000000..f0b521f Binary files /dev/null and b/VOC/images/val/05440.jpg differ diff --git a/VOC/images/val/05460.jpg b/VOC/images/val/05460.jpg new file mode 100644 index 0000000..cc3db1c Binary files /dev/null and b/VOC/images/val/05460.jpg differ diff --git a/VOC/images/val/05470.jpg b/VOC/images/val/05470.jpg new file mode 100644 index 0000000..ec56c61 Binary files /dev/null and b/VOC/images/val/05470.jpg differ diff --git a/VOC/images/val/05480.jpg b/VOC/images/val/05480.jpg new file mode 100644 index 0000000..2581c3f Binary files /dev/null and b/VOC/images/val/05480.jpg differ diff --git a/VOC/images/val/05510.jpg b/VOC/images/val/05510.jpg new file mode 100644 index 0000000..121f68f Binary files /dev/null and b/VOC/images/val/05510.jpg differ diff --git a/VOC/images/val/05520.jpg b/VOC/images/val/05520.jpg new file mode 100644 index 0000000..6dc54e7 Binary files /dev/null and b/VOC/images/val/05520.jpg differ diff --git a/VOC/images/val/05530.jpg b/VOC/images/val/05530.jpg new file mode 100644 index 0000000..3114317 Binary files /dev/null and b/VOC/images/val/05530.jpg differ diff --git a/VOC/images/val/05540.jpg b/VOC/images/val/05540.jpg new file mode 100644 index 0000000..a4ae5e8 Binary files /dev/null and b/VOC/images/val/05540.jpg differ diff --git a/VOC/images/val/05550.jpg b/VOC/images/val/05550.jpg new file mode 100644 index 0000000..013387d Binary files /dev/null and b/VOC/images/val/05550.jpg differ diff --git a/VOC/images/val/05580.jpg b/VOC/images/val/05580.jpg new file mode 100644 index 0000000..6de85fb Binary files /dev/null and b/VOC/images/val/05580.jpg differ diff --git a/VOC/images/val/05590.jpg b/VOC/images/val/05590.jpg new file mode 100644 index 0000000..0ba3789 Binary files /dev/null and b/VOC/images/val/05590.jpg differ diff --git a/VOC/images/val/05610.jpg b/VOC/images/val/05610.jpg new file mode 100644 index 0000000..81217e4 Binary files /dev/null and b/VOC/images/val/05610.jpg differ diff --git a/VOC/images/val/05620.jpg b/VOC/images/val/05620.jpg new file mode 100644 index 0000000..cec388c Binary files /dev/null and b/VOC/images/val/05620.jpg differ diff --git a/VOC/images/val/05630.jpg b/VOC/images/val/05630.jpg new file mode 100644 index 0000000..7ab7af4 Binary files /dev/null and b/VOC/images/val/05630.jpg differ diff --git a/VOC/images/val/05680.jpg b/VOC/images/val/05680.jpg new file mode 100644 index 0000000..dcbbb32 Binary files /dev/null and b/VOC/images/val/05680.jpg differ diff --git a/VOC/images/val/05690.jpg b/VOC/images/val/05690.jpg new file mode 100644 index 0000000..53ebe45 Binary files /dev/null and b/VOC/images/val/05690.jpg differ diff --git a/VOC/images/val/05700.jpg b/VOC/images/val/05700.jpg new file mode 100644 index 0000000..5f63665 Binary files /dev/null and b/VOC/images/val/05700.jpg differ diff --git a/VOC/images/val/05710.jpg b/VOC/images/val/05710.jpg new file mode 100644 index 0000000..e11a3b5 Binary files /dev/null and b/VOC/images/val/05710.jpg differ diff --git a/VOC/images/val/05730.jpg b/VOC/images/val/05730.jpg new file mode 100644 index 0000000..6781cb9 Binary files /dev/null and b/VOC/images/val/05730.jpg differ diff --git a/VOC/images/val/05760.jpg b/VOC/images/val/05760.jpg new file mode 100644 index 0000000..a5c9dee Binary files /dev/null and b/VOC/images/val/05760.jpg differ diff --git a/VOC/images/val/05770.jpg b/VOC/images/val/05770.jpg new file mode 100644 index 0000000..04629a9 Binary files /dev/null and b/VOC/images/val/05770.jpg differ diff --git a/VOC/images/val/05780.jpg b/VOC/images/val/05780.jpg new file mode 100644 index 0000000..0f19b46 Binary files /dev/null and b/VOC/images/val/05780.jpg differ diff --git a/VOC/images/val/05790.jpg b/VOC/images/val/05790.jpg new file mode 100644 index 0000000..bb8bc38 Binary files /dev/null and b/VOC/images/val/05790.jpg differ diff --git a/VOC/images/val/05840.jpg b/VOC/images/val/05840.jpg new file mode 100644 index 0000000..fe1b362 Binary files /dev/null and b/VOC/images/val/05840.jpg differ diff --git a/VOC/images/val/05850.jpg b/VOC/images/val/05850.jpg new file mode 100644 index 0000000..fa6914f Binary files /dev/null and b/VOC/images/val/05850.jpg differ diff --git a/VOC/images/val/05870.jpg b/VOC/images/val/05870.jpg new file mode 100644 index 0000000..6078110 Binary files /dev/null and b/VOC/images/val/05870.jpg differ diff --git a/VOC/images/val/05880.jpg b/VOC/images/val/05880.jpg new file mode 100644 index 0000000..8f004e4 Binary files /dev/null and b/VOC/images/val/05880.jpg differ diff --git a/VOC/images/val/05890.jpg b/VOC/images/val/05890.jpg new file mode 100644 index 0000000..85143c2 Binary files /dev/null and b/VOC/images/val/05890.jpg differ diff --git a/VOC/images/val/05910.jpg b/VOC/images/val/05910.jpg new file mode 100644 index 0000000..bf20f72 Binary files /dev/null and b/VOC/images/val/05910.jpg differ diff --git a/VOC/images/val/05920.jpg b/VOC/images/val/05920.jpg new file mode 100644 index 0000000..f4e4310 Binary files /dev/null and b/VOC/images/val/05920.jpg differ diff --git a/VOC/images/val/05960.jpg b/VOC/images/val/05960.jpg new file mode 100644 index 0000000..601928d Binary files /dev/null and b/VOC/images/val/05960.jpg differ diff --git a/VOC/images/val/06000.jpg b/VOC/images/val/06000.jpg new file mode 100644 index 0000000..d479e88 Binary files /dev/null and b/VOC/images/val/06000.jpg differ diff --git a/VOC/images/val/06010.jpg b/VOC/images/val/06010.jpg new file mode 100644 index 0000000..8cd1805 Binary files /dev/null and b/VOC/images/val/06010.jpg differ diff --git a/VOC/images/val/06030.jpg b/VOC/images/val/06030.jpg new file mode 100644 index 0000000..2998b72 Binary files /dev/null and b/VOC/images/val/06030.jpg differ diff --git a/VOC/images/val/06050.jpg b/VOC/images/val/06050.jpg new file mode 100644 index 0000000..a137366 Binary files /dev/null and b/VOC/images/val/06050.jpg differ diff --git a/VOC/images/val/06090.jpg b/VOC/images/val/06090.jpg new file mode 100644 index 0000000..f03841e Binary files /dev/null and b/VOC/images/val/06090.jpg differ diff --git a/VOC/images/val/06110.jpg b/VOC/images/val/06110.jpg new file mode 100644 index 0000000..976de49 Binary files /dev/null and b/VOC/images/val/06110.jpg differ diff --git a/VOC/images/val/06120.jpg b/VOC/images/val/06120.jpg new file mode 100644 index 0000000..2cf50ae Binary files /dev/null and b/VOC/images/val/06120.jpg differ diff --git a/VOC/images/val/06150.jpg b/VOC/images/val/06150.jpg new file mode 100644 index 0000000..7186e7e Binary files /dev/null and b/VOC/images/val/06150.jpg differ diff --git a/VOC/images/val/06160.jpg b/VOC/images/val/06160.jpg new file mode 100644 index 0000000..87829d0 Binary files /dev/null and b/VOC/images/val/06160.jpg differ diff --git a/VOC/images/val/06170.jpg b/VOC/images/val/06170.jpg new file mode 100644 index 0000000..4ed46a6 Binary files /dev/null and b/VOC/images/val/06170.jpg differ diff --git a/VOC/images/val/06180.jpg b/VOC/images/val/06180.jpg new file mode 100644 index 0000000..4b2e888 Binary files /dev/null and b/VOC/images/val/06180.jpg differ diff --git a/VOC/images/val/06190.jpg b/VOC/images/val/06190.jpg new file mode 100644 index 0000000..7bbc3bc Binary files /dev/null and b/VOC/images/val/06190.jpg differ diff --git a/VOC/images/val/06210.jpg b/VOC/images/val/06210.jpg new file mode 100644 index 0000000..0e096f9 Binary files /dev/null and b/VOC/images/val/06210.jpg differ diff --git a/VOC/images/val/06240.jpg b/VOC/images/val/06240.jpg new file mode 100644 index 0000000..7e0dcde Binary files /dev/null and b/VOC/images/val/06240.jpg differ diff --git a/VOC/images/val/06260.jpg b/VOC/images/val/06260.jpg new file mode 100644 index 0000000..eac49f1 Binary files /dev/null and b/VOC/images/val/06260.jpg differ diff --git a/VOC/images/val/06270.jpg b/VOC/images/val/06270.jpg new file mode 100644 index 0000000..6d6eead Binary files /dev/null and b/VOC/images/val/06270.jpg differ diff --git a/VOC/images/val/06280.jpg b/VOC/images/val/06280.jpg new file mode 100644 index 0000000..328a66b Binary files /dev/null and b/VOC/images/val/06280.jpg differ diff --git a/VOC/images/val/06290.jpg b/VOC/images/val/06290.jpg new file mode 100644 index 0000000..de4c73e Binary files /dev/null and b/VOC/images/val/06290.jpg differ diff --git a/VOC/images/val/06300.jpg b/VOC/images/val/06300.jpg new file mode 100644 index 0000000..1ac903f Binary files /dev/null and b/VOC/images/val/06300.jpg differ diff --git a/VOC/images/val/06340.jpg b/VOC/images/val/06340.jpg new file mode 100644 index 0000000..ec4d500 Binary files /dev/null and b/VOC/images/val/06340.jpg differ diff --git a/VOC/images/val/06370.jpg b/VOC/images/val/06370.jpg new file mode 100644 index 0000000..a687b12 Binary files /dev/null and b/VOC/images/val/06370.jpg differ diff --git a/VOC/images/val/06380.jpg b/VOC/images/val/06380.jpg new file mode 100644 index 0000000..eb6c291 Binary files /dev/null and b/VOC/images/val/06380.jpg differ diff --git a/VOC/images/val/06390.jpg b/VOC/images/val/06390.jpg new file mode 100644 index 0000000..8b924b2 Binary files /dev/null and b/VOC/images/val/06390.jpg differ diff --git a/VOC/images/val/06400.jpg b/VOC/images/val/06400.jpg new file mode 100644 index 0000000..300c02c Binary files /dev/null and b/VOC/images/val/06400.jpg differ diff --git a/VOC/images/val/06430.jpg b/VOC/images/val/06430.jpg new file mode 100644 index 0000000..008c80f Binary files /dev/null and b/VOC/images/val/06430.jpg differ diff --git a/VOC/images/val/06450.jpg b/VOC/images/val/06450.jpg new file mode 100644 index 0000000..f99f708 Binary files /dev/null and b/VOC/images/val/06450.jpg differ diff --git a/VOC/images/val/06460.jpg b/VOC/images/val/06460.jpg new file mode 100644 index 0000000..2781d0a Binary files /dev/null and b/VOC/images/val/06460.jpg differ diff --git a/VOC/images/val/06470.jpg b/VOC/images/val/06470.jpg new file mode 100644 index 0000000..dddec1b Binary files /dev/null and b/VOC/images/val/06470.jpg differ diff --git a/VOC/images/val/06480.jpg b/VOC/images/val/06480.jpg new file mode 100644 index 0000000..eee9e91 Binary files /dev/null and b/VOC/images/val/06480.jpg differ diff --git a/VOC/images/val/06490.jpg b/VOC/images/val/06490.jpg new file mode 100644 index 0000000..a751919 Binary files /dev/null and b/VOC/images/val/06490.jpg differ diff --git a/VOC/labels/train/0000.txt b/VOC/labels/train/0000.txt new file mode 100644 index 0000000..68d001a --- /dev/null +++ b/VOC/labels/train/0000.txt @@ -0,0 +1,2 @@ +31 0.243229 0.448148 0.105208 0.237037 +31 0.729167 0.469444 0.104167 0.172222 diff --git a/VOC/labels/train/00000.txt b/VOC/labels/train/00000.txt new file mode 100644 index 0000000..3dd783c --- /dev/null +++ b/VOC/labels/train/00000.txt @@ -0,0 +1 @@ +1 0.525 0.340625 0.16875 0.26875 diff --git a/VOC/labels/train/0001.txt b/VOC/labels/train/0001.txt new file mode 100644 index 0000000..feda27f --- /dev/null +++ b/VOC/labels/train/0001.txt @@ -0,0 +1 @@ +31 0.540625 0.474074 0.360417 0.814815 diff --git a/VOC/labels/train/00010.txt b/VOC/labels/train/00010.txt new file mode 100644 index 0000000..7559d42 --- /dev/null +++ b/VOC/labels/train/00010.txt @@ -0,0 +1,2 @@ +1 0.43994140625 0.1328125 0.1552734375 0.19921875 +1 0.62841796875 0.15234375 0.1337890625 0.1796875 diff --git a/VOC/labels/train/0002.txt b/VOC/labels/train/0002.txt new file mode 100644 index 0000000..484e4d7 --- /dev/null +++ b/VOC/labels/train/0002.txt @@ -0,0 +1 @@ +31 0.403646 0.296296 0.188542 0.481481 diff --git a/VOC/labels/train/00020.txt b/VOC/labels/train/00020.txt new file mode 100644 index 0000000..9409736 --- /dev/null +++ b/VOC/labels/train/00020.txt @@ -0,0 +1 @@ +1 0.4375 0.18114063512637718 0.251953125 0.22099805573558004 diff --git a/VOC/labels/train/0003.txt b/VOC/labels/train/0003.txt new file mode 100644 index 0000000..b7663d3 --- /dev/null +++ b/VOC/labels/train/0003.txt @@ -0,0 +1 @@ +31 0.342708 0.386111 0.179167 0.305556 diff --git a/VOC/labels/train/00030.txt b/VOC/labels/train/00030.txt new file mode 100644 index 0000000..789131c --- /dev/null +++ b/VOC/labels/train/00030.txt @@ -0,0 +1,2 @@ +1 0.2509765625 0.19873046875 0.16796875 0.2158203125 +1 0.73193359375 0.16650390625 0.1474609375 0.1728515625 diff --git a/VOC/labels/train/00040.txt b/VOC/labels/train/00040.txt new file mode 100644 index 0000000..784f199 --- /dev/null +++ b/VOC/labels/train/00040.txt @@ -0,0 +1 @@ +1 0.5453125 0.48125 0.134375 0.20416666666666666 diff --git a/VOC/labels/train/0005.txt b/VOC/labels/train/0005.txt new file mode 100644 index 0000000..7eab80d --- /dev/null +++ b/VOC/labels/train/0005.txt @@ -0,0 +1,2 @@ +31 0.315625 0.465741 0.077083 0.175926 +31 0.797396 0.180556 0.167708 0.235185 diff --git a/VOC/labels/train/00050.txt b/VOC/labels/train/00050.txt new file mode 100644 index 0000000..43120d3 --- /dev/null +++ b/VOC/labels/train/00050.txt @@ -0,0 +1 @@ +1 0.44287109375 0.39496527777777773 0.2607421875 0.5295138888888888 diff --git a/VOC/labels/train/0006.txt b/VOC/labels/train/0006.txt new file mode 100644 index 0000000..9f5aac2 --- /dev/null +++ b/VOC/labels/train/0006.txt @@ -0,0 +1,2 @@ +31 0.278646 0.250926 0.134375 0.194444 +31 0.733333 0.471296 0.106250 0.216667 diff --git a/VOC/labels/train/00060.txt b/VOC/labels/train/00060.txt new file mode 100644 index 0000000..63d7698 --- /dev/null +++ b/VOC/labels/train/00060.txt @@ -0,0 +1 @@ +1 0.5671875000000001 0.43854166666666666 0.134375 0.20208333333333334 diff --git a/VOC/labels/train/0007.txt b/VOC/labels/train/0007.txt new file mode 100644 index 0000000..a06f51b --- /dev/null +++ b/VOC/labels/train/0007.txt @@ -0,0 +1,11 @@ +31 0.073958 0.332407 0.068750 0.120370 +31 0.121354 0.500000 0.061458 0.137037 +31 0.213542 0.350000 0.066667 0.092593 +31 0.276562 0.538889 0.078125 0.111111 +31 0.369792 0.301852 0.060417 0.122222 +31 0.414583 0.514815 0.062500 0.144444 +31 0.475000 0.354630 0.039583 0.124074 +31 0.576042 0.384259 0.062500 0.124074 +31 0.633854 0.549074 0.051042 0.161111 +31 0.670312 0.342593 0.034375 0.140741 +31 0.836458 0.469444 0.089583 0.168519 diff --git a/VOC/labels/train/00070.txt b/VOC/labels/train/00070.txt new file mode 100644 index 0000000..7998f68 --- /dev/null +++ b/VOC/labels/train/00070.txt @@ -0,0 +1 @@ +1 0.35029940119760483 0.135 0.16167664670658682 0.126 diff --git a/VOC/labels/train/0008.txt b/VOC/labels/train/0008.txt new file mode 100644 index 0000000..56e7d82 --- /dev/null +++ b/VOC/labels/train/0008.txt @@ -0,0 +1 @@ +31 0.397396 0.410185 0.226042 0.509259 diff --git a/VOC/labels/train/00080.txt b/VOC/labels/train/00080.txt new file mode 100644 index 0000000..c649be9 --- /dev/null +++ b/VOC/labels/train/00080.txt @@ -0,0 +1 @@ +1 0.52734375 0.5166666666666666 0.1640625 0.2708333333333333 diff --git a/VOC/labels/train/0009.txt b/VOC/labels/train/0009.txt new file mode 100644 index 0000000..9f3187f --- /dev/null +++ b/VOC/labels/train/0009.txt @@ -0,0 +1 @@ +31 0.475521 0.375926 0.101042 0.166667 diff --git a/VOC/labels/train/00090.txt b/VOC/labels/train/00090.txt new file mode 100644 index 0000000..51f10bc --- /dev/null +++ b/VOC/labels/train/00090.txt @@ -0,0 +1 @@ +1 0.53359375 0.38645833333333335 0.1765625 0.26458333333333334 diff --git a/VOC/labels/train/00100.txt b/VOC/labels/train/00100.txt new file mode 100644 index 0000000..7c55a6a --- /dev/null +++ b/VOC/labels/train/00100.txt @@ -0,0 +1 @@ +1 0.49462890625 0.30006835269993165 0.5498046875 0.42378673957621327 diff --git a/VOC/labels/train/0011.txt b/VOC/labels/train/0011.txt new file mode 100644 index 0000000..e425af7 --- /dev/null +++ b/VOC/labels/train/0011.txt @@ -0,0 +1 @@ +31 0.193229 0.411111 0.217708 0.437037 diff --git a/VOC/labels/train/0012.txt b/VOC/labels/train/0012.txt new file mode 100644 index 0000000..79629ce --- /dev/null +++ b/VOC/labels/train/0012.txt @@ -0,0 +1 @@ +31 0.658333 0.337037 0.195833 0.525926 diff --git a/VOC/labels/train/0013.txt b/VOC/labels/train/0013.txt new file mode 100644 index 0000000..525e38e --- /dev/null +++ b/VOC/labels/train/0013.txt @@ -0,0 +1 @@ +31 0.507292 0.377778 0.166667 0.340741 diff --git a/VOC/labels/train/0014.txt b/VOC/labels/train/0014.txt new file mode 100644 index 0000000..b6c2088 --- /dev/null +++ b/VOC/labels/train/0014.txt @@ -0,0 +1,2 @@ +31 0.344271 0.278704 0.140625 0.361111 +31 0.674479 0.206481 0.217708 0.350000 diff --git a/VOC/labels/train/0016.txt b/VOC/labels/train/0016.txt new file mode 100644 index 0000000..9743ec8 --- /dev/null +++ b/VOC/labels/train/0016.txt @@ -0,0 +1 @@ +31 0.671875 0.322222 0.254167 0.581481 diff --git a/VOC/labels/train/0018.txt b/VOC/labels/train/0018.txt new file mode 100644 index 0000000..dffdfc5 --- /dev/null +++ b/VOC/labels/train/0018.txt @@ -0,0 +1,2 @@ +31 0.324479 0.449074 0.153125 0.309259 +31 0.675000 0.489815 0.106250 0.309259 diff --git a/VOC/labels/train/0019.txt b/VOC/labels/train/0019.txt new file mode 100644 index 0000000..ae3400d --- /dev/null +++ b/VOC/labels/train/0019.txt @@ -0,0 +1,2 @@ +31 0.393750 0.327778 0.187500 0.281481 +31 0.560417 0.264815 0.108333 0.281481 diff --git a/VOC/labels/train/0020.txt b/VOC/labels/train/0020.txt new file mode 100644 index 0000000..65d90dc --- /dev/null +++ b/VOC/labels/train/0020.txt @@ -0,0 +1 @@ +31 0.430729 0.292593 0.209375 0.462963 diff --git a/VOC/labels/train/0021.txt b/VOC/labels/train/0021.txt new file mode 100644 index 0000000..cf49f8d --- /dev/null +++ b/VOC/labels/train/0021.txt @@ -0,0 +1,2 @@ +31 0.346875 0.386111 0.235417 0.605556 +31 0.793750 0.333333 0.202083 0.555556 diff --git a/VOC/labels/train/0022.txt b/VOC/labels/train/0022.txt new file mode 100644 index 0000000..fe96e60 --- /dev/null +++ b/VOC/labels/train/0022.txt @@ -0,0 +1,2 @@ +31 0.295833 0.317593 0.106250 0.242593 +31 0.673438 0.356481 0.165625 0.253704 diff --git a/VOC/labels/train/0023.txt b/VOC/labels/train/0023.txt new file mode 100644 index 0000000..8c81536 --- /dev/null +++ b/VOC/labels/train/0023.txt @@ -0,0 +1 @@ +31 0.669271 0.373148 0.330208 0.701852 diff --git a/VOC/labels/train/0024.txt b/VOC/labels/train/0024.txt new file mode 100644 index 0000000..e61d8da --- /dev/null +++ b/VOC/labels/train/0024.txt @@ -0,0 +1 @@ +31 0.609896 0.317593 0.178125 0.390741 diff --git a/VOC/labels/train/0025.txt b/VOC/labels/train/0025.txt new file mode 100644 index 0000000..a4627a3 --- /dev/null +++ b/VOC/labels/train/0025.txt @@ -0,0 +1 @@ +31 0.369271 0.471296 0.380208 0.850000 diff --git a/VOC/labels/train/0026.txt b/VOC/labels/train/0026.txt new file mode 100644 index 0000000..f35b6a9 --- /dev/null +++ b/VOC/labels/train/0026.txt @@ -0,0 +1 @@ +31 0.539062 0.337037 0.255208 0.551852 diff --git a/VOC/labels/train/0027.txt b/VOC/labels/train/0027.txt new file mode 100644 index 0000000..f9c6809 --- /dev/null +++ b/VOC/labels/train/0027.txt @@ -0,0 +1 @@ +31 0.491146 0.367593 0.219792 0.501852 diff --git a/VOC/labels/train/0028.txt b/VOC/labels/train/0028.txt new file mode 100644 index 0000000..c21afd2 --- /dev/null +++ b/VOC/labels/train/0028.txt @@ -0,0 +1 @@ +31 0.393229 0.471296 0.155208 0.420370 diff --git a/VOC/labels/train/0029.txt b/VOC/labels/train/0029.txt new file mode 100644 index 0000000..dc05c47 --- /dev/null +++ b/VOC/labels/train/0029.txt @@ -0,0 +1 @@ +31 0.488021 0.421296 0.188542 0.553704 diff --git a/VOC/labels/train/0030.txt b/VOC/labels/train/0030.txt new file mode 100644 index 0000000..9fd1545 --- /dev/null +++ b/VOC/labels/train/0030.txt @@ -0,0 +1 @@ +31 0.454167 0.297222 0.164583 0.346296 diff --git a/VOC/labels/train/0031.txt b/VOC/labels/train/0031.txt new file mode 100644 index 0000000..ca17d01 --- /dev/null +++ b/VOC/labels/train/0031.txt @@ -0,0 +1 @@ +31 0.407813 0.362963 0.280208 0.562963 diff --git a/VOC/labels/train/0032.txt b/VOC/labels/train/0032.txt new file mode 100644 index 0000000..e2f43df --- /dev/null +++ b/VOC/labels/train/0032.txt @@ -0,0 +1 @@ +31 0.385937 0.184259 0.198958 0.342593 diff --git a/VOC/labels/train/0033.txt b/VOC/labels/train/0033.txt new file mode 100644 index 0000000..d409849 --- /dev/null +++ b/VOC/labels/train/0033.txt @@ -0,0 +1 @@ +31 0.726042 0.384259 0.220833 0.461111 diff --git a/VOC/labels/train/0034.txt b/VOC/labels/train/0034.txt new file mode 100644 index 0000000..c9618a9 --- /dev/null +++ b/VOC/labels/train/0034.txt @@ -0,0 +1 @@ +31 0.375000 0.358333 0.320833 0.494444 diff --git a/VOC/labels/train/0035.txt b/VOC/labels/train/0035.txt new file mode 100644 index 0000000..dad3b77 --- /dev/null +++ b/VOC/labels/train/0035.txt @@ -0,0 +1 @@ +31 0.476042 0.375000 0.214583 0.438889 diff --git a/VOC/labels/train/0036.txt b/VOC/labels/train/0036.txt new file mode 100644 index 0000000..ce83756 --- /dev/null +++ b/VOC/labels/train/0036.txt @@ -0,0 +1 @@ +31 0.468229 0.266667 0.176042 0.433333 diff --git a/VOC/labels/train/0037.txt b/VOC/labels/train/0037.txt new file mode 100644 index 0000000..e4b68f7 --- /dev/null +++ b/VOC/labels/train/0037.txt @@ -0,0 +1 @@ +31 0.505729 0.389815 0.163542 0.316667 diff --git a/VOC/labels/train/0039.txt b/VOC/labels/train/0039.txt new file mode 100644 index 0000000..fca5d68 --- /dev/null +++ b/VOC/labels/train/0039.txt @@ -0,0 +1 @@ +31 0.500000 0.358333 0.172917 0.372222 diff --git a/VOC/labels/train/0040.txt b/VOC/labels/train/0040.txt new file mode 100644 index 0000000..14716a4 --- /dev/null +++ b/VOC/labels/train/0040.txt @@ -0,0 +1 @@ +31 0.500521 0.416667 0.221875 0.592593 diff --git a/VOC/labels/train/0041.txt b/VOC/labels/train/0041.txt new file mode 100644 index 0000000..4b99aa7 --- /dev/null +++ b/VOC/labels/train/0041.txt @@ -0,0 +1 @@ +31 0.470833 0.336111 0.150000 0.390741 diff --git a/VOC/labels/train/0042.txt b/VOC/labels/train/0042.txt new file mode 100644 index 0000000..e1f00a3 --- /dev/null +++ b/VOC/labels/train/0042.txt @@ -0,0 +1 @@ +31 0.672396 0.378704 0.365625 0.746296 diff --git a/VOC/labels/train/0043.txt b/VOC/labels/train/0043.txt new file mode 100644 index 0000000..7ea84ec --- /dev/null +++ b/VOC/labels/train/0043.txt @@ -0,0 +1 @@ +31 0.537500 0.312037 0.145833 0.290741 diff --git a/VOC/labels/train/0044.txt b/VOC/labels/train/0044.txt new file mode 100644 index 0000000..cf8de61 --- /dev/null +++ b/VOC/labels/train/0044.txt @@ -0,0 +1 @@ +31 0.547917 0.370370 0.318750 0.603704 diff --git a/VOC/labels/train/0045.txt b/VOC/labels/train/0045.txt new file mode 100644 index 0000000..c343131 --- /dev/null +++ b/VOC/labels/train/0045.txt @@ -0,0 +1 @@ +31 0.404167 0.515741 0.306250 0.772222 diff --git a/VOC/labels/train/0046.txt b/VOC/labels/train/0046.txt new file mode 100644 index 0000000..cf60ccb --- /dev/null +++ b/VOC/labels/train/0046.txt @@ -0,0 +1 @@ +31 0.453125 0.448148 0.302083 0.722222 diff --git a/VOC/labels/train/0047.txt b/VOC/labels/train/0047.txt new file mode 100644 index 0000000..a23bbff --- /dev/null +++ b/VOC/labels/train/0047.txt @@ -0,0 +1 @@ +31 0.400000 0.349074 0.227083 0.505556 diff --git a/VOC/labels/train/0048.txt b/VOC/labels/train/0048.txt new file mode 100644 index 0000000..fccc776 --- /dev/null +++ b/VOC/labels/train/0048.txt @@ -0,0 +1 @@ +31 0.513021 0.505556 0.080208 0.192593 diff --git a/VOC/labels/train/0049.txt b/VOC/labels/train/0049.txt new file mode 100644 index 0000000..fa24283 --- /dev/null +++ b/VOC/labels/train/0049.txt @@ -0,0 +1 @@ +31 0.568750 0.356481 0.266667 0.590741 diff --git a/VOC/labels/train/0050.txt b/VOC/labels/train/0050.txt new file mode 100644 index 0000000..9f30f89 --- /dev/null +++ b/VOC/labels/train/0050.txt @@ -0,0 +1 @@ +31 0.585417 0.330556 0.177083 0.442593 diff --git a/VOC/labels/train/0051.txt b/VOC/labels/train/0051.txt new file mode 100644 index 0000000..47510ff --- /dev/null +++ b/VOC/labels/train/0051.txt @@ -0,0 +1 @@ +31 0.255729 0.343519 0.307292 0.598148 diff --git a/VOC/labels/train/0052.txt b/VOC/labels/train/0052.txt new file mode 100644 index 0000000..fcf8e4f --- /dev/null +++ b/VOC/labels/train/0052.txt @@ -0,0 +1 @@ +31 0.509375 0.443519 0.200000 0.416667 diff --git a/VOC/labels/train/00520.txt b/VOC/labels/train/00520.txt new file mode 100644 index 0000000..66ac8dc --- /dev/null +++ b/VOC/labels/train/00520.txt @@ -0,0 +1 @@ +1 0.5359375000000001 0.3229166666666667 0.19687500000000002 0.3375 diff --git a/VOC/labels/train/0053.txt b/VOC/labels/train/0053.txt new file mode 100644 index 0000000..0db072b --- /dev/null +++ b/VOC/labels/train/0053.txt @@ -0,0 +1 @@ +31 0.488021 0.423148 0.280208 0.527778 diff --git a/VOC/labels/train/00530.txt b/VOC/labels/train/00530.txt new file mode 100644 index 0000000..e37eaa1 --- /dev/null +++ b/VOC/labels/train/00530.txt @@ -0,0 +1 @@ +1 0.44677734375 0.265625 0.1201171875 0.2421875 diff --git a/VOC/labels/train/0054.txt b/VOC/labels/train/0054.txt new file mode 100644 index 0000000..a9bd781 --- /dev/null +++ b/VOC/labels/train/0054.txt @@ -0,0 +1 @@ +31 0.529687 0.254630 0.136458 0.290741 diff --git a/VOC/labels/train/00540.txt b/VOC/labels/train/00540.txt new file mode 100644 index 0000000..a25b99c --- /dev/null +++ b/VOC/labels/train/00540.txt @@ -0,0 +1 @@ +1 0.51220703125 0.2770618556701031 0.3896484375 0.33118556701030927 diff --git a/VOC/labels/train/0055.txt b/VOC/labels/train/0055.txt new file mode 100644 index 0000000..3f35f35 --- /dev/null +++ b/VOC/labels/train/0055.txt @@ -0,0 +1 @@ +31 0.440104 0.473148 0.182292 0.405556 diff --git a/VOC/labels/train/0056.txt b/VOC/labels/train/0056.txt new file mode 100644 index 0000000..e3f0a9f --- /dev/null +++ b/VOC/labels/train/0056.txt @@ -0,0 +1 @@ +31 0.429688 0.287037 0.151042 0.381481 diff --git a/VOC/labels/train/00560.txt b/VOC/labels/train/00560.txt new file mode 100644 index 0000000..5111629 --- /dev/null +++ b/VOC/labels/train/00560.txt @@ -0,0 +1 @@ +1 0.2744140625 0.2982398956975228 0.458984375 0.43089960886571055 diff --git a/VOC/labels/train/0057.txt b/VOC/labels/train/0057.txt new file mode 100644 index 0000000..433349c --- /dev/null +++ b/VOC/labels/train/0057.txt @@ -0,0 +1 @@ +31 0.434375 0.361111 0.310417 0.600000 diff --git a/VOC/labels/train/0058.txt b/VOC/labels/train/0058.txt new file mode 100644 index 0000000..8d4e571 --- /dev/null +++ b/VOC/labels/train/0058.txt @@ -0,0 +1 @@ +31 0.597917 0.340741 0.189583 0.448148 diff --git a/VOC/labels/train/00580.txt b/VOC/labels/train/00580.txt new file mode 100644 index 0000000..7de3aac --- /dev/null +++ b/VOC/labels/train/00580.txt @@ -0,0 +1 @@ +1 0.484375 0.1484375 0.166015625 0.216796875 diff --git a/VOC/labels/train/0059.txt b/VOC/labels/train/0059.txt new file mode 100644 index 0000000..b1c44bb --- /dev/null +++ b/VOC/labels/train/0059.txt @@ -0,0 +1 @@ +31 0.472917 0.343519 0.252083 0.642593 diff --git a/VOC/labels/train/00590.txt b/VOC/labels/train/00590.txt new file mode 100644 index 0000000..60616ae --- /dev/null +++ b/VOC/labels/train/00590.txt @@ -0,0 +1,3 @@ +1 0.171875 0.40299479166666663 0.09375 0.14713541666666666 +1 0.48193359375 0.4016927083333333 0.1064453125 0.16796875 +1 0.8759765625 0.3997395833333333 0.091796875 0.1640625 diff --git a/VOC/labels/train/0060.txt b/VOC/labels/train/0060.txt new file mode 100644 index 0000000..9343eb1 --- /dev/null +++ b/VOC/labels/train/0060.txt @@ -0,0 +1 @@ +31 0.568750 0.240741 0.114583 0.207407 diff --git a/VOC/labels/train/00600.txt b/VOC/labels/train/00600.txt new file mode 100644 index 0000000..1355c97 --- /dev/null +++ b/VOC/labels/train/00600.txt @@ -0,0 +1 @@ +1 0.390625 0.1998535871156662 0.150390625 0.30014641288433386 diff --git a/VOC/labels/train/0061.txt b/VOC/labels/train/0061.txt new file mode 100644 index 0000000..fa1e489 --- /dev/null +++ b/VOC/labels/train/0061.txt @@ -0,0 +1 @@ +31 0.550521 0.365741 0.173958 0.350000 diff --git a/VOC/labels/train/00610.txt b/VOC/labels/train/00610.txt new file mode 100644 index 0000000..a4332da --- /dev/null +++ b/VOC/labels/train/00610.txt @@ -0,0 +1 @@ +1 0.5398437500000001 0.3145833333333333 0.17343750000000002 0.3 diff --git a/VOC/labels/train/0062.txt b/VOC/labels/train/0062.txt new file mode 100644 index 0000000..9474259 --- /dev/null +++ b/VOC/labels/train/0062.txt @@ -0,0 +1,3 @@ +31 0.559375 0.225926 0.137500 0.262963 +31 0.839063 0.240741 0.130208 0.311111 +31 0.293750 0.294444 0.143750 0.248148 diff --git a/VOC/labels/train/00620.txt b/VOC/labels/train/00620.txt new file mode 100644 index 0000000..ca47b50 --- /dev/null +++ b/VOC/labels/train/00620.txt @@ -0,0 +1,2 @@ +1 0.47705078125 0.1987597911227154 0.1962890625 0.16906005221932116 +1 0.78857421875 0.3064621409921671 0.2216796875 0.17819843342036554 diff --git a/VOC/labels/train/0063.txt b/VOC/labels/train/0063.txt new file mode 100644 index 0000000..bf50ffc --- /dev/null +++ b/VOC/labels/train/0063.txt @@ -0,0 +1 @@ +31 0.518229 0.328704 0.192708 0.375926 diff --git a/VOC/labels/train/00630.txt b/VOC/labels/train/00630.txt new file mode 100644 index 0000000..3b99cb4 --- /dev/null +++ b/VOC/labels/train/00630.txt @@ -0,0 +1 @@ +1 0.48876953125 0.363754889178618 0.6689453125 0.5410691003911343 diff --git a/VOC/labels/train/0064.txt b/VOC/labels/train/0064.txt new file mode 100644 index 0000000..d479556 --- /dev/null +++ b/VOC/labels/train/0064.txt @@ -0,0 +1 @@ +31 0.482812 0.489815 0.278125 0.594444 diff --git a/VOC/labels/train/00640.txt b/VOC/labels/train/00640.txt new file mode 100644 index 0000000..0c60e0c --- /dev/null +++ b/VOC/labels/train/00640.txt @@ -0,0 +1 @@ +1 0.5859375 0.306640625 0.12890625 0.22786458333333331 diff --git a/VOC/labels/train/0065.txt b/VOC/labels/train/0065.txt new file mode 100644 index 0000000..add6550 --- /dev/null +++ b/VOC/labels/train/0065.txt @@ -0,0 +1 @@ +31 0.427083 0.334259 0.231250 0.446296 diff --git a/VOC/labels/train/00650.txt b/VOC/labels/train/00650.txt new file mode 100644 index 0000000..384ef96 --- /dev/null +++ b/VOC/labels/train/00650.txt @@ -0,0 +1,2 @@ +1 0.33154296875 0.22371134020618558 0.1982421875 0.19175257731958764 +1 0.60107421875 0.15257731958762888 0.2060546875 0.18694158075601375 diff --git a/VOC/labels/train/0066.txt b/VOC/labels/train/0066.txt new file mode 100644 index 0000000..7915c4d --- /dev/null +++ b/VOC/labels/train/0066.txt @@ -0,0 +1 @@ +31 0.506250 0.435185 0.295833 0.611111 diff --git a/VOC/labels/train/0067.txt b/VOC/labels/train/0067.txt new file mode 100644 index 0000000..77c6066 --- /dev/null +++ b/VOC/labels/train/0067.txt @@ -0,0 +1 @@ +31 0.486458 0.401852 0.235417 0.544444 diff --git a/VOC/labels/train/00670.txt b/VOC/labels/train/00670.txt new file mode 100644 index 0000000..72d9fd1 --- /dev/null +++ b/VOC/labels/train/00670.txt @@ -0,0 +1,3 @@ +1 0.749 0.29333333333333333 0.226 0.37866666666666665 +1 0.537 0.12266666666666666 0.07 0.12266666666666666 +1 0.063 0.10933333333333332 0.09 0.144 diff --git a/VOC/labels/train/0068.txt b/VOC/labels/train/0068.txt new file mode 100644 index 0000000..e6b8ec1 --- /dev/null +++ b/VOC/labels/train/0068.txt @@ -0,0 +1 @@ +31 0.452083 0.298148 0.185417 0.381481 diff --git a/VOC/labels/train/00680.txt b/VOC/labels/train/00680.txt new file mode 100644 index 0000000..c513ae5 --- /dev/null +++ b/VOC/labels/train/00680.txt @@ -0,0 +1,8 @@ +1 0.17500000000000002 0.2813333333333333 0.074 0.09333333333333332 +1 0.324 0.27466666666666667 0.068 0.11733333333333333 +1 0.452 0.31466666666666665 0.056 0.096 +1 0.626 0.3293333333333333 0.064 0.12 +1 0.726 0.3133333333333333 0.064 0.12533333333333332 +1 0.8230000000000001 0.2906666666666667 0.08600000000000001 0.13333333333333333 +1 0.505 0.48266666666666663 0.08600000000000001 0.13333333333333333 +1 0.364 0.5 0.07200000000000001 0.14133333333333334 diff --git a/VOC/labels/train/0070.txt b/VOC/labels/train/0070.txt new file mode 100644 index 0000000..1965f46 --- /dev/null +++ b/VOC/labels/train/0070.txt @@ -0,0 +1,2 @@ +31 0.148958 0.578704 0.225000 0.520370 +31 0.638542 0.445370 0.279167 0.616667 diff --git a/VOC/labels/train/00700.txt b/VOC/labels/train/00700.txt new file mode 100644 index 0000000..ea86a22 --- /dev/null +++ b/VOC/labels/train/00700.txt @@ -0,0 +1 @@ +1 0.5281250000000001 0.5020833333333333 0.20625000000000002 0.2916666666666667 diff --git a/VOC/labels/train/0071.txt b/VOC/labels/train/0071.txt new file mode 100644 index 0000000..4d578a8 --- /dev/null +++ b/VOC/labels/train/0071.txt @@ -0,0 +1 @@ +31 0.441146 0.446296 0.334375 0.774074 diff --git a/VOC/labels/train/00710.txt b/VOC/labels/train/00710.txt new file mode 100644 index 0000000..c0c221c --- /dev/null +++ b/VOC/labels/train/00710.txt @@ -0,0 +1 @@ +1 0.47314453125 0.2821180555555555 0.1611328125 0.4253472222222222 diff --git a/VOC/labels/train/0072.txt b/VOC/labels/train/0072.txt new file mode 100644 index 0000000..9c71ed9 --- /dev/null +++ b/VOC/labels/train/0072.txt @@ -0,0 +1 @@ +31 0.311979 0.274074 0.157292 0.262963 diff --git a/VOC/labels/train/00720.txt b/VOC/labels/train/00720.txt new file mode 100644 index 0000000..b358557 --- /dev/null +++ b/VOC/labels/train/00720.txt @@ -0,0 +1,3 @@ +1 0.40900000000000003 0.5 0.10200000000000001 0.2072072072072072 +1 0.547 0.5180180180180181 0.114 0.2012012012012012 +1 0.464 0.26126126126126126 0.112 0.2222222222222222 diff --git a/VOC/labels/train/0073.txt b/VOC/labels/train/0073.txt new file mode 100644 index 0000000..06f71f5 --- /dev/null +++ b/VOC/labels/train/0073.txt @@ -0,0 +1 @@ +31 0.692187 0.360185 0.123958 0.212963 diff --git a/VOC/labels/train/00730.txt b/VOC/labels/train/00730.txt new file mode 100644 index 0000000..4152198 --- /dev/null +++ b/VOC/labels/train/00730.txt @@ -0,0 +1 @@ +1 0.3759765625 0.35836385836385837 0.453125 0.6776556776556777 diff --git a/VOC/labels/train/0074.txt b/VOC/labels/train/0074.txt new file mode 100644 index 0000000..fd54dd9 --- /dev/null +++ b/VOC/labels/train/0074.txt @@ -0,0 +1 @@ +31 0.438021 0.379630 0.209375 0.477778 diff --git a/VOC/labels/train/00740.txt b/VOC/labels/train/00740.txt new file mode 100644 index 0000000..c66ffce --- /dev/null +++ b/VOC/labels/train/00740.txt @@ -0,0 +1,3 @@ +1 0.23779296875 0.2764945652173913 0.1552734375 0.2703804347826087 +1 0.77734375 0.18138586956521738 0.1875 0.3138586956521739 +1 0.4921875 0.38926630434782605 0.083984375 0.13994565217391303 diff --git a/VOC/labels/train/0075.txt b/VOC/labels/train/0075.txt new file mode 100644 index 0000000..c5a5bb4 --- /dev/null +++ b/VOC/labels/train/0075.txt @@ -0,0 +1 @@ +31 0.446875 0.423148 0.281250 0.550000 diff --git a/VOC/labels/train/00750.txt b/VOC/labels/train/00750.txt new file mode 100644 index 0000000..d5eab2b --- /dev/null +++ b/VOC/labels/train/00750.txt @@ -0,0 +1 @@ +1 0.59814453125 0.3489583333333333 0.6318359375 0.5611979166666666 diff --git a/VOC/labels/train/0076.txt b/VOC/labels/train/0076.txt new file mode 100644 index 0000000..3a287a5 --- /dev/null +++ b/VOC/labels/train/0076.txt @@ -0,0 +1 @@ +31 0.625000 0.380556 0.177083 0.542593 diff --git a/VOC/labels/train/00760.txt b/VOC/labels/train/00760.txt new file mode 100644 index 0000000..cf5bd85 --- /dev/null +++ b/VOC/labels/train/00760.txt @@ -0,0 +1 @@ +1 0.515625 0.4427083333333333 0.209375 0.31875 diff --git a/VOC/labels/train/0077.txt b/VOC/labels/train/0077.txt new file mode 100644 index 0000000..4f75eed --- /dev/null +++ b/VOC/labels/train/0077.txt @@ -0,0 +1 @@ +31 0.402604 0.463889 0.221875 0.531481 diff --git a/VOC/labels/train/00770.txt b/VOC/labels/train/00770.txt new file mode 100644 index 0000000..5e4ab81 --- /dev/null +++ b/VOC/labels/train/00770.txt @@ -0,0 +1 @@ +1 0.5515625000000001 0.39791666666666664 0.184375 0.275 diff --git a/VOC/labels/train/0078.txt b/VOC/labels/train/0078.txt new file mode 100644 index 0000000..22f6ced --- /dev/null +++ b/VOC/labels/train/0078.txt @@ -0,0 +1 @@ +31 0.527083 0.500000 0.331250 0.629630 diff --git a/VOC/labels/train/0079.txt b/VOC/labels/train/0079.txt new file mode 100644 index 0000000..ce0dbc8 --- /dev/null +++ b/VOC/labels/train/0079.txt @@ -0,0 +1 @@ +31 0.540625 0.439815 0.231250 0.516667 diff --git a/VOC/labels/train/00790.txt b/VOC/labels/train/00790.txt new file mode 100644 index 0000000..bffa7ec --- /dev/null +++ b/VOC/labels/train/00790.txt @@ -0,0 +1 @@ +1 0.51328125 0.496875 0.2109375 0.34375 diff --git a/VOC/labels/train/0080.txt b/VOC/labels/train/0080.txt new file mode 100644 index 0000000..d82bfad --- /dev/null +++ b/VOC/labels/train/0080.txt @@ -0,0 +1 @@ +31 0.453646 0.565741 0.105208 0.224074 diff --git a/VOC/labels/train/00800.txt b/VOC/labels/train/00800.txt new file mode 100644 index 0000000..28da33f --- /dev/null +++ b/VOC/labels/train/00800.txt @@ -0,0 +1 @@ +1 0.55615234375 0.4003921568627451 0.4365234375 0.4541176470588235 diff --git a/VOC/labels/train/0081.txt b/VOC/labels/train/0081.txt new file mode 100644 index 0000000..fcf0d58 --- /dev/null +++ b/VOC/labels/train/0081.txt @@ -0,0 +1 @@ +31 0.388021 0.373148 0.276042 0.531481 diff --git a/VOC/labels/train/00810.txt b/VOC/labels/train/00810.txt new file mode 100644 index 0000000..43fa850 --- /dev/null +++ b/VOC/labels/train/00810.txt @@ -0,0 +1,2 @@ +1 0.36474609375 0.30538922155688625 0.3486328125 0.34281437125748504 +1 0.70458984375 0.41242514970059885 0.1806640625 0.157185628742515 diff --git a/VOC/labels/train/0082.txt b/VOC/labels/train/0082.txt new file mode 100644 index 0000000..bbbc343 --- /dev/null +++ b/VOC/labels/train/0082.txt @@ -0,0 +1 @@ +31 0.505729 0.374074 0.157292 0.307407 diff --git a/VOC/labels/train/00820.txt b/VOC/labels/train/00820.txt new file mode 100644 index 0000000..929c5a9 --- /dev/null +++ b/VOC/labels/train/00820.txt @@ -0,0 +1 @@ +1 0.28933333333333333 0.318 0.3173333333333333 0.28800000000000003 diff --git a/VOC/labels/train/0083.txt b/VOC/labels/train/0083.txt new file mode 100644 index 0000000..9b99d5c --- /dev/null +++ b/VOC/labels/train/0083.txt @@ -0,0 +1 @@ +31 0.490625 0.195370 0.131250 0.238889 diff --git a/VOC/labels/train/00830.txt b/VOC/labels/train/00830.txt new file mode 100644 index 0000000..27dab2c --- /dev/null +++ b/VOC/labels/train/00830.txt @@ -0,0 +1 @@ +1 0.521484375 0.2934451219512195 0.388671875 0.4024390243902439 diff --git a/VOC/labels/train/0084.txt b/VOC/labels/train/0084.txt new file mode 100644 index 0000000..53a11f4 --- /dev/null +++ b/VOC/labels/train/0084.txt @@ -0,0 +1 @@ +31 0.355729 0.345370 0.153125 0.272222 diff --git a/VOC/labels/train/00840.txt b/VOC/labels/train/00840.txt new file mode 100644 index 0000000..5a1b941 --- /dev/null +++ b/VOC/labels/train/00840.txt @@ -0,0 +1 @@ +1 0.5789062500000001 0.4 0.19843750000000002 0.2833333333333333 diff --git a/VOC/labels/train/0085.txt b/VOC/labels/train/0085.txt new file mode 100644 index 0000000..7f8eb4a --- /dev/null +++ b/VOC/labels/train/0085.txt @@ -0,0 +1 @@ +31 0.523438 0.310185 0.163542 0.446296 diff --git a/VOC/labels/train/00850.txt b/VOC/labels/train/00850.txt new file mode 100644 index 0000000..56bb551 --- /dev/null +++ b/VOC/labels/train/00850.txt @@ -0,0 +1 @@ +1 0.486328125 0.2629310344827586 0.693359375 0.5100574712643678 diff --git a/VOC/labels/train/0086.txt b/VOC/labels/train/0086.txt new file mode 100644 index 0000000..b216814 --- /dev/null +++ b/VOC/labels/train/0086.txt @@ -0,0 +1,2 @@ +31 0.364063 0.379630 0.211458 0.496296 +31 0.740625 0.585185 0.175000 0.403704 diff --git a/VOC/labels/train/00860.txt b/VOC/labels/train/00860.txt new file mode 100644 index 0000000..9946114 --- /dev/null +++ b/VOC/labels/train/00860.txt @@ -0,0 +1,3 @@ +1 0.2451171875 0.28306092124814264 0.13671875 0.27191679049034173 +1 0.45068359375 0.17830609212481424 0.1396484375 0.2852897473997028 +1 0.8173828125 0.25854383358098065 0.13671875 0.23179791976225853 diff --git a/VOC/labels/train/0087.txt b/VOC/labels/train/0087.txt new file mode 100644 index 0000000..9a1e0f9 --- /dev/null +++ b/VOC/labels/train/0087.txt @@ -0,0 +1 @@ +31 0.618229 0.254630 0.132292 0.290741 diff --git a/VOC/labels/train/00870.txt b/VOC/labels/train/00870.txt new file mode 100644 index 0000000..32c4abf --- /dev/null +++ b/VOC/labels/train/00870.txt @@ -0,0 +1,2 @@ +1 0.4658203125 0.269893899204244 0.138671875 0.23209549071618035 +1 0.693359375 0.2791777188328912 0.15234375 0.23209549071618035 diff --git a/VOC/labels/train/0088.txt b/VOC/labels/train/0088.txt new file mode 100644 index 0000000..66377e6 --- /dev/null +++ b/VOC/labels/train/0088.txt @@ -0,0 +1 @@ +31 0.655208 0.325926 0.191667 0.377778 diff --git a/VOC/labels/train/00880.txt b/VOC/labels/train/00880.txt new file mode 100644 index 0000000..60b40f1 --- /dev/null +++ b/VOC/labels/train/00880.txt @@ -0,0 +1 @@ +1 0.722 0.512 0.3 0.528 diff --git a/VOC/labels/train/0089.txt b/VOC/labels/train/0089.txt new file mode 100644 index 0000000..04c6f5a --- /dev/null +++ b/VOC/labels/train/0089.txt @@ -0,0 +1 @@ +31 0.432812 0.384259 0.161458 0.368519 diff --git a/VOC/labels/train/00890.txt b/VOC/labels/train/00890.txt new file mode 100644 index 0000000..62cda81 --- /dev/null +++ b/VOC/labels/train/00890.txt @@ -0,0 +1 @@ +1 0.54453125 0.26666666666666666 0.19843750000000002 0.2875 diff --git a/VOC/labels/train/0090.txt b/VOC/labels/train/0090.txt new file mode 100644 index 0000000..e090d7e --- /dev/null +++ b/VOC/labels/train/0090.txt @@ -0,0 +1 @@ +31 0.594271 0.275000 0.088542 0.175926 diff --git a/VOC/labels/train/00900.txt b/VOC/labels/train/00900.txt new file mode 100644 index 0000000..d1434aa --- /dev/null +++ b/VOC/labels/train/00900.txt @@ -0,0 +1,2 @@ +1 0.46533203125 0.23111979166666666 0.2021484375 0.3138020833333333 +1 0.830078125 0.20833333333333331 0.21484375 0.3333333333333333 diff --git a/VOC/labels/train/0091.txt b/VOC/labels/train/0091.txt new file mode 100644 index 0000000..2fd7bad --- /dev/null +++ b/VOC/labels/train/0091.txt @@ -0,0 +1 @@ +31 0.603125 0.374074 0.302083 0.637037 diff --git a/VOC/labels/train/00910.txt b/VOC/labels/train/00910.txt new file mode 100644 index 0000000..a9128cb --- /dev/null +++ b/VOC/labels/train/00910.txt @@ -0,0 +1 @@ +1 0.5146484375 0.32108843537414966 0.4765625 0.39999999999999997 diff --git a/VOC/labels/train/0092.txt b/VOC/labels/train/0092.txt new file mode 100644 index 0000000..e0ab3c6 --- /dev/null +++ b/VOC/labels/train/0092.txt @@ -0,0 +1 @@ +31 0.529167 0.380556 0.231250 0.616667 diff --git a/VOC/labels/train/00920.txt b/VOC/labels/train/00920.txt new file mode 100644 index 0000000..02719a6 --- /dev/null +++ b/VOC/labels/train/00920.txt @@ -0,0 +1 @@ +1 0.5921875 0.390625 0.20625000000000002 0.2895833333333333 diff --git a/VOC/labels/train/00930.txt b/VOC/labels/train/00930.txt new file mode 100644 index 0000000..ae3f933 --- /dev/null +++ b/VOC/labels/train/00930.txt @@ -0,0 +1 @@ +1 0.41357421875 0.4195906432748538 0.3251953125 0.6988304093567251 diff --git a/VOC/labels/train/0094.txt b/VOC/labels/train/0094.txt new file mode 100644 index 0000000..e234c94 --- /dev/null +++ b/VOC/labels/train/0094.txt @@ -0,0 +1 @@ +31 0.451042 0.379630 0.289583 0.522222 diff --git a/VOC/labels/train/0095.txt b/VOC/labels/train/0095.txt new file mode 100644 index 0000000..bce3264 --- /dev/null +++ b/VOC/labels/train/0095.txt @@ -0,0 +1 @@ +31 0.456250 0.304630 0.214583 0.338889 diff --git a/VOC/labels/train/00950.txt b/VOC/labels/train/00950.txt new file mode 100644 index 0000000..214cdac --- /dev/null +++ b/VOC/labels/train/00950.txt @@ -0,0 +1,2 @@ +1 0.31005859375 0.13799414348462666 0.2060546875 0.19399707174231334 +1 0.5546875 0.12481698389458273 0.232421875 0.20863836017569548 diff --git a/VOC/labels/train/0096.txt b/VOC/labels/train/0096.txt new file mode 100644 index 0000000..a065583 --- /dev/null +++ b/VOC/labels/train/0096.txt @@ -0,0 +1 @@ +31 0.577604 0.437037 0.296875 0.703704 diff --git a/VOC/labels/train/0097.txt b/VOC/labels/train/0097.txt new file mode 100644 index 0000000..4d57a69 --- /dev/null +++ b/VOC/labels/train/0097.txt @@ -0,0 +1 @@ +31 0.526042 0.448148 0.181250 0.403704 diff --git a/VOC/labels/train/00970.txt b/VOC/labels/train/00970.txt new file mode 100644 index 0000000..45666e9 --- /dev/null +++ b/VOC/labels/train/00970.txt @@ -0,0 +1 @@ +1 0.5171875 0.4 0.178125 0.29583333333333334 diff --git a/VOC/labels/train/0098.txt b/VOC/labels/train/0098.txt new file mode 100644 index 0000000..c2ff0c9 --- /dev/null +++ b/VOC/labels/train/0098.txt @@ -0,0 +1,4 @@ +31 0.505208 0.341667 0.154167 0.342593 +31 0.861458 0.254630 0.164583 0.346296 +31 0.297917 0.274074 0.183333 0.285185 +31 0.082812 0.454630 0.126042 0.387037 diff --git a/VOC/labels/train/00980.txt b/VOC/labels/train/00980.txt new file mode 100644 index 0000000..0d4a59d --- /dev/null +++ b/VOC/labels/train/00980.txt @@ -0,0 +1,2 @@ +1 0.305 0.5105421686746988 0.17 0.35843373493975905 +1 0.596 0.4954819277108434 0.14400000000000002 0.2801204819277109 diff --git a/VOC/labels/train/0099.txt b/VOC/labels/train/0099.txt new file mode 100644 index 0000000..6a4d179 --- /dev/null +++ b/VOC/labels/train/0099.txt @@ -0,0 +1 @@ +31 0.465625 0.470370 0.222917 0.377778 diff --git a/VOC/labels/train/0100.txt b/VOC/labels/train/0100.txt new file mode 100644 index 0000000..820acab --- /dev/null +++ b/VOC/labels/train/0100.txt @@ -0,0 +1 @@ +31 0.558854 0.374074 0.226042 0.440741 diff --git a/VOC/labels/train/01000.txt b/VOC/labels/train/01000.txt new file mode 100644 index 0000000..359740b --- /dev/null +++ b/VOC/labels/train/01000.txt @@ -0,0 +1 @@ +1 0.6218750000000001 0.4197916666666667 0.17500000000000002 0.26875 diff --git a/VOC/labels/train/0101.txt b/VOC/labels/train/0101.txt new file mode 100644 index 0000000..2e29ec6 --- /dev/null +++ b/VOC/labels/train/0101.txt @@ -0,0 +1 @@ +31 0.460938 0.312037 0.136458 0.250000 diff --git a/VOC/labels/train/01010.txt b/VOC/labels/train/01010.txt new file mode 100644 index 0000000..5851cb0 --- /dev/null +++ b/VOC/labels/train/01010.txt @@ -0,0 +1 @@ +1 0.55390625 0.4354166666666667 0.1703125 0.2625 diff --git a/VOC/labels/train/01020.txt b/VOC/labels/train/01020.txt new file mode 100644 index 0000000..fa48d2b --- /dev/null +++ b/VOC/labels/train/01020.txt @@ -0,0 +1,2 @@ +1 0.3098958333333333 0.47222222222222227 0.11354166666666667 0.23703703703703705 +1 0.6052083333333333 0.4287037037037037 0.13333333333333333 0.29814814814814816 diff --git a/VOC/labels/train/01030.txt b/VOC/labels/train/01030.txt new file mode 100644 index 0000000..0086c39 --- /dev/null +++ b/VOC/labels/train/01030.txt @@ -0,0 +1 @@ +1 0.52109375 0.38125 0.15781250000000002 0.2625 diff --git a/VOC/labels/train/01040.txt b/VOC/labels/train/01040.txt new file mode 100644 index 0000000..b2181c6 --- /dev/null +++ b/VOC/labels/train/01040.txt @@ -0,0 +1 @@ +1 0.5265625 0.3375 0.14375000000000002 0.22916666666666666 diff --git a/VOC/labels/train/01050.txt b/VOC/labels/train/01050.txt new file mode 100644 index 0000000..f7d6481 --- /dev/null +++ b/VOC/labels/train/01050.txt @@ -0,0 +1 @@ +1 0.46640625 0.3958333333333333 0.2390625 0.4083333333333333 diff --git a/VOC/labels/train/01060.txt b/VOC/labels/train/01060.txt new file mode 100644 index 0000000..0fb68ef --- /dev/null +++ b/VOC/labels/train/01060.txt @@ -0,0 +1 @@ +1 0.5859375 0.44687499999999997 0.209375 0.34375 diff --git a/VOC/labels/train/01080.txt b/VOC/labels/train/01080.txt new file mode 100644 index 0000000..2cee272 --- /dev/null +++ b/VOC/labels/train/01080.txt @@ -0,0 +1 @@ +1 0.6666666666666666 0.28500000000000003 0.23466666666666666 0.21 diff --git a/VOC/labels/train/01090.txt b/VOC/labels/train/01090.txt new file mode 100644 index 0000000..d49326f --- /dev/null +++ b/VOC/labels/train/01090.txt @@ -0,0 +1 @@ +1 0.5390625 0.4270833333333333 0.17500000000000002 0.275 diff --git a/VOC/labels/train/01100.txt b/VOC/labels/train/01100.txt new file mode 100644 index 0000000..fc5e6d7 --- /dev/null +++ b/VOC/labels/train/01100.txt @@ -0,0 +1 @@ +1 0.43212890625 0.1743357096565133 0.2841796875 0.2566429034348671 diff --git a/VOC/labels/train/01110.txt b/VOC/labels/train/01110.txt new file mode 100644 index 0000000..bf7b9e4 --- /dev/null +++ b/VOC/labels/train/01110.txt @@ -0,0 +1 @@ +1 0.3955078125 0.25292207792207794 0.412109375 0.36298701298701297 diff --git a/VOC/labels/train/01120.txt b/VOC/labels/train/01120.txt new file mode 100644 index 0000000..cc54e38 --- /dev/null +++ b/VOC/labels/train/01120.txt @@ -0,0 +1 @@ +1 0.52578125 0.378125 0.1703125 0.29791666666666666 diff --git a/VOC/labels/train/01130.txt b/VOC/labels/train/01130.txt new file mode 100644 index 0000000..404c5de --- /dev/null +++ b/VOC/labels/train/01130.txt @@ -0,0 +1 @@ +1 0.67236328125 0.2520193861066236 0.1240234375 0.23263327948303716 diff --git a/VOC/labels/train/01140.txt b/VOC/labels/train/01140.txt new file mode 100644 index 0000000..be2f190 --- /dev/null +++ b/VOC/labels/train/01140.txt @@ -0,0 +1 @@ +1 0.6109375 0.41562499999999997 0.22812500000000002 0.38125 diff --git a/VOC/labels/train/01150.txt b/VOC/labels/train/01150.txt new file mode 100644 index 0000000..933bd70 --- /dev/null +++ b/VOC/labels/train/01150.txt @@ -0,0 +1 @@ +1 0.151 0.4005376344086022 0.298 0.4731182795698925 diff --git a/VOC/labels/train/01170.txt b/VOC/labels/train/01170.txt new file mode 100644 index 0000000..adb39f3 --- /dev/null +++ b/VOC/labels/train/01170.txt @@ -0,0 +1 @@ +1 0.44453125000000004 0.32916666666666666 0.2421875 0.37083333333333335 diff --git a/VOC/labels/train/01180.txt b/VOC/labels/train/01180.txt new file mode 100644 index 0000000..d44eacc --- /dev/null +++ b/VOC/labels/train/01180.txt @@ -0,0 +1,2 @@ +1 0.392578125 0.39895697522816165 0.185546875 0.3468057366362451 +1 0.73828125 0.42633637548891784 0.16796875 0.2816166883963494 diff --git a/VOC/labels/train/01190.txt b/VOC/labels/train/01190.txt new file mode 100644 index 0000000..4310727 --- /dev/null +++ b/VOC/labels/train/01190.txt @@ -0,0 +1 @@ +1 0.52978515625 0.2896440129449838 0.3232421875 0.3255663430420712 diff --git a/VOC/labels/train/01200.txt b/VOC/labels/train/01200.txt new file mode 100644 index 0000000..9b562a6 --- /dev/null +++ b/VOC/labels/train/01200.txt @@ -0,0 +1 @@ +1 0.5328125 0.4479166666666667 0.16562500000000002 0.26666666666666666 diff --git a/VOC/labels/train/01210.txt b/VOC/labels/train/01210.txt new file mode 100644 index 0000000..0641c22 --- /dev/null +++ b/VOC/labels/train/01210.txt @@ -0,0 +1 @@ +1 0.5328125 0.3333333333333333 0.178125 0.29583333333333334 diff --git a/VOC/labels/train/01220.txt b/VOC/labels/train/01220.txt new file mode 100644 index 0000000..4362a03 --- /dev/null +++ b/VOC/labels/train/01220.txt @@ -0,0 +1 @@ +1 0.35107421875 0.23828920570264764 0.2763671875 0.3869653767820774 diff --git a/VOC/labels/train/01230.txt b/VOC/labels/train/01230.txt new file mode 100644 index 0000000..f627a97 --- /dev/null +++ b/VOC/labels/train/01230.txt @@ -0,0 +1 @@ +1 0.484375 0.1284191006026889 0.234375 0.12239221140472878 diff --git a/VOC/labels/train/01240.txt b/VOC/labels/train/01240.txt new file mode 100644 index 0000000..7a4bd70 --- /dev/null +++ b/VOC/labels/train/01240.txt @@ -0,0 +1 @@ +1 0.51328125 0.33958333333333335 0.15781250000000002 0.2708333333333333 diff --git a/VOC/labels/train/01250.txt b/VOC/labels/train/01250.txt new file mode 100644 index 0000000..58c2727 --- /dev/null +++ b/VOC/labels/train/01250.txt @@ -0,0 +1 @@ +1 0.51025390625 0.20194113963681903 0.3291015625 0.28490920475892295 diff --git a/VOC/labels/train/01260.txt b/VOC/labels/train/01260.txt new file mode 100644 index 0000000..c2746e7 --- /dev/null +++ b/VOC/labels/train/01260.txt @@ -0,0 +1,2 @@ +1 0.42236328125 0.287568306010929 0.2314453125 0.4412568306010929 +1 0.70166015625 0.29713114754098363 0.2275390625 0.4166666666666667 diff --git a/VOC/labels/train/01270.txt b/VOC/labels/train/01270.txt new file mode 100644 index 0000000..a22f745 --- /dev/null +++ b/VOC/labels/train/01270.txt @@ -0,0 +1 @@ +1 0.3779296875 0.2165948275862069 0.23046875 0.22916666666666666 diff --git a/VOC/labels/train/01280.txt b/VOC/labels/train/01280.txt new file mode 100644 index 0000000..c70a6b0 --- /dev/null +++ b/VOC/labels/train/01280.txt @@ -0,0 +1 @@ +1 0.564453125 0.3355134074558535 0.59375 0.6278613472858078 diff --git a/VOC/labels/train/01290.txt b/VOC/labels/train/01290.txt new file mode 100644 index 0000000..c07e392 --- /dev/null +++ b/VOC/labels/train/01290.txt @@ -0,0 +1 @@ +1 0.4375 0.38044184535412606 0.669921875 0.6062378167641325 diff --git a/VOC/labels/train/01300.txt b/VOC/labels/train/01300.txt new file mode 100644 index 0000000..6767704 --- /dev/null +++ b/VOC/labels/train/01300.txt @@ -0,0 +1,4 @@ +1 0.24462890625 0.33984375 0.1220703125 0.22916666666666666 +1 0.39794921875 0.3802083333333333 0.1181640625 0.19791666666666666 +1 0.58251953125 0.44986979166666663 0.1181640625 0.18359375 +1 0.7900390625 0.3372395833333333 0.150390625 0.25260416666666663 diff --git a/VOC/labels/train/01310.txt b/VOC/labels/train/01310.txt new file mode 100644 index 0000000..625bd26 --- /dev/null +++ b/VOC/labels/train/01310.txt @@ -0,0 +1 @@ +1 0.5085937500000001 0.39166666666666666 0.21406250000000002 0.3458333333333333 diff --git a/VOC/labels/train/01320.txt b/VOC/labels/train/01320.txt new file mode 100644 index 0000000..594610b --- /dev/null +++ b/VOC/labels/train/01320.txt @@ -0,0 +1 @@ +1 0.5014749262536873 0.372 0.11209439528023599 0.088 diff --git a/VOC/labels/train/01330.txt b/VOC/labels/train/01330.txt new file mode 100644 index 0000000..3fbefa5 --- /dev/null +++ b/VOC/labels/train/01330.txt @@ -0,0 +1 @@ +1 0.515625 0.37028608582574774 0.56640625 0.48439531859557866 diff --git a/VOC/labels/train/01340.txt b/VOC/labels/train/01340.txt new file mode 100644 index 0000000..60c9fbb --- /dev/null +++ b/VOC/labels/train/01340.txt @@ -0,0 +1,4 @@ +1 0.099 0.45866666666666667 0.194 0.48533333333333334 +1 0.295 0.5973333333333333 0.13 0.21333333333333332 +1 0.72 0.284 0.092 0.17333333333333334 +1 0.915 0.512 0.106 0.16 diff --git a/VOC/labels/train/01350.txt b/VOC/labels/train/01350.txt new file mode 100644 index 0000000..885258c --- /dev/null +++ b/VOC/labels/train/01350.txt @@ -0,0 +1 @@ +1 0.52197265625 0.27994791666666663 0.4755859375 0.4114583333333333 diff --git a/VOC/labels/train/01370.txt b/VOC/labels/train/01370.txt new file mode 100644 index 0000000..03e2a36 --- /dev/null +++ b/VOC/labels/train/01370.txt @@ -0,0 +1,2 @@ +1 0.39111328125 0.2188340807174888 0.2275390625 0.25829596412556055 +1 0.65234375 0.21928251121076234 0.212890625 0.2591928251121076 diff --git a/VOC/labels/train/01380.txt b/VOC/labels/train/01380.txt new file mode 100644 index 0000000..5ec3595 --- /dev/null +++ b/VOC/labels/train/01380.txt @@ -0,0 +1 @@ +1 0.5068359375 0.27956204379562044 0.416015625 0.41751824817518246 diff --git a/VOC/labels/train/01390.txt b/VOC/labels/train/01390.txt new file mode 100644 index 0000000..5034631 --- /dev/null +++ b/VOC/labels/train/01390.txt @@ -0,0 +1,2 @@ +1 0.388671875 0.14906027219701878 0.12890625 0.13869086195722619 +1 0.6787109375 0.21743357096565133 0.138671875 0.12119248217757615 diff --git a/VOC/labels/train/01410.txt b/VOC/labels/train/01410.txt new file mode 100644 index 0000000..cbe04fb --- /dev/null +++ b/VOC/labels/train/01410.txt @@ -0,0 +1 @@ +1 0.48876953125 0.10702199661590524 0.1787109375 0.18358714043993232 diff --git a/VOC/labels/train/01420.txt b/VOC/labels/train/01420.txt new file mode 100644 index 0000000..64c90e3 --- /dev/null +++ b/VOC/labels/train/01420.txt @@ -0,0 +1 @@ +1 0.401 0.492 0.294 0.48266666666666663 diff --git a/VOC/labels/train/01430.txt b/VOC/labels/train/01430.txt new file mode 100644 index 0000000..94395fd --- /dev/null +++ b/VOC/labels/train/01430.txt @@ -0,0 +1,2 @@ +1 0.21826171875 0.2889374090247453 0.1337890625 0.24890829694323147 +1 0.6806640625 0.16448326055312956 0.189453125 0.29985443959243085 diff --git a/VOC/labels/train/01440.txt b/VOC/labels/train/01440.txt new file mode 100644 index 0000000..8880bed --- /dev/null +++ b/VOC/labels/train/01440.txt @@ -0,0 +1 @@ +1 0.58046875 0.41041666666666665 0.16718750000000002 0.2583333333333333 diff --git a/VOC/labels/train/01460.txt b/VOC/labels/train/01460.txt new file mode 100644 index 0000000..65c8869 --- /dev/null +++ b/VOC/labels/train/01460.txt @@ -0,0 +1,5 @@ +1 0.2509765625 0.18899204244031828 0.1171875 0.22148541114058354 +1 0.35595703125 0.2964190981432361 0.1064453125 0.19496021220159152 +1 0.474609375 0.24403183023872677 0.072265625 0.1909814323607427 +1 0.5556640625 0.3149867374005305 0.076171875 0.15517241379310345 +1 0.65234375 0.2679045092838196 0.083984375 0.18037135278514588 diff --git a/VOC/labels/train/01470.txt b/VOC/labels/train/01470.txt new file mode 100644 index 0000000..c07873b --- /dev/null +++ b/VOC/labels/train/01470.txt @@ -0,0 +1 @@ +1 0.5146484375 0.25830078125 0.373046875 0.4873046875 diff --git a/VOC/labels/train/01480.txt b/VOC/labels/train/01480.txt new file mode 100644 index 0000000..a6970dd --- /dev/null +++ b/VOC/labels/train/01480.txt @@ -0,0 +1 @@ +1 0.30712890625 0.23375706214689265 0.2353515625 0.3997175141242938 diff --git a/VOC/labels/train/01490.txt b/VOC/labels/train/01490.txt new file mode 100644 index 0000000..9b373b1 --- /dev/null +++ b/VOC/labels/train/01490.txt @@ -0,0 +1 @@ +1 0.5322265625 0.31852791878172587 0.4921875 0.5609137055837563 diff --git a/VOC/labels/train/01500.txt b/VOC/labels/train/01500.txt new file mode 100644 index 0000000..ad2b5f2 --- /dev/null +++ b/VOC/labels/train/01500.txt @@ -0,0 +1 @@ +1 0.498046875 0.3026315789473684 0.462890625 0.45951417004048584 diff --git a/VOC/labels/train/01510.txt b/VOC/labels/train/01510.txt new file mode 100644 index 0000000..7d14a2d --- /dev/null +++ b/VOC/labels/train/01510.txt @@ -0,0 +1 @@ +1 0.5953125 0.39166666666666666 0.17500000000000002 0.24583333333333332 diff --git a/VOC/labels/train/01520.txt b/VOC/labels/train/01520.txt new file mode 100644 index 0000000..2bff137 --- /dev/null +++ b/VOC/labels/train/01520.txt @@ -0,0 +1 @@ +1 0.58125 0.421875 0.240625 0.31875 diff --git a/VOC/labels/train/01530.txt b/VOC/labels/train/01530.txt new file mode 100644 index 0000000..92cfed9 --- /dev/null +++ b/VOC/labels/train/01530.txt @@ -0,0 +1,2 @@ +1 0.225 0.2533333333333333 0.134 0.21333333333333332 +1 0.628 0.216 0.124 0.208 diff --git a/VOC/labels/train/01540.txt b/VOC/labels/train/01540.txt new file mode 100644 index 0000000..d2772d8 --- /dev/null +++ b/VOC/labels/train/01540.txt @@ -0,0 +1 @@ +1 0.6023437500000001 0.3958333333333333 0.1703125 0.24166666666666667 diff --git a/VOC/labels/train/01550.txt b/VOC/labels/train/01550.txt new file mode 100644 index 0000000..9c3e32d --- /dev/null +++ b/VOC/labels/train/01550.txt @@ -0,0 +1 @@ +1 0.49375 0.421875 0.22187500000000002 0.33541666666666664 diff --git a/VOC/labels/train/01560.txt b/VOC/labels/train/01560.txt new file mode 100644 index 0000000..1b24441 --- /dev/null +++ b/VOC/labels/train/01560.txt @@ -0,0 +1 @@ +1 0.4697265625 0.18570402298850575 0.236328125 0.23922413793103448 diff --git a/VOC/labels/train/01570.txt b/VOC/labels/train/01570.txt new file mode 100644 index 0000000..f75d539 --- /dev/null +++ b/VOC/labels/train/01570.txt @@ -0,0 +1 @@ +1 0.48046875 0.2503581661891117 0.32421875 0.3144699140401146 diff --git a/VOC/labels/train/01580.txt b/VOC/labels/train/01580.txt new file mode 100644 index 0000000..ac7c551 --- /dev/null +++ b/VOC/labels/train/01580.txt @@ -0,0 +1,3 @@ +1 0.4951171875 0.4216691068814056 0.04296875 0.06734992679355783 +1 0.63525390625 0.40995607613469986 0.0498046875 0.07027818448023426 +1 0.7431640625 0.4150805270863836 0.037109375 0.06881405563689605 diff --git a/VOC/labels/train/01590.txt b/VOC/labels/train/01590.txt new file mode 100644 index 0000000..1f1516b --- /dev/null +++ b/VOC/labels/train/01590.txt @@ -0,0 +1 @@ +1 0.38525390625 0.45492957746478874 0.3408203125 0.6929577464788733 diff --git a/VOC/labels/train/01600.txt b/VOC/labels/train/01600.txt new file mode 100644 index 0000000..44b22e9 --- /dev/null +++ b/VOC/labels/train/01600.txt @@ -0,0 +1 @@ +1 0.5203125000000001 0.37083333333333335 0.23125 0.39166666666666666 diff --git a/VOC/labels/train/01620.txt b/VOC/labels/train/01620.txt new file mode 100644 index 0000000..3f7101d --- /dev/null +++ b/VOC/labels/train/01620.txt @@ -0,0 +1,2 @@ +1 0.353515625 0.30781250000000004 0.123046875 0.290625 +1 0.5341796875 0.18828125 0.13671875 0.2765625 diff --git a/VOC/labels/train/01630.txt b/VOC/labels/train/01630.txt new file mode 100644 index 0000000..5a6e8e9 --- /dev/null +++ b/VOC/labels/train/01630.txt @@ -0,0 +1,4 @@ +1 0.18115234375 0.08409279204639603 0.1279296875 0.1168185584092792 +1 0.40283203125 0.1992543496271748 0.0986328125 0.11184755592377796 +1 0.576171875 0.19552609776304888 0.115234375 0.1060480530240265 +1 0.83154296875 0.1512013256006628 0.1162109375 0.1168185584092792 diff --git a/VOC/labels/train/01640.txt b/VOC/labels/train/01640.txt new file mode 100644 index 0000000..b7a5d3c --- /dev/null +++ b/VOC/labels/train/01640.txt @@ -0,0 +1,7 @@ +1 0.10888671875 0.18281938325991187 0.0908203125 0.16005873715124816 +1 0.255859375 0.2533039647577092 0.072265625 0.1277533039647577 +1 0.3720703125 0.29148311306901614 0.087890625 0.15418502202643172 +1 0.4775390625 0.1872246696035242 0.0703125 0.13656387665198236 +1 0.568359375 0.2834067547723935 0.0859375 0.16740088105726872 +1 0.71142578125 0.2731277533039647 0.0869140625 0.15859030837004404 +1 0.87158203125 0.2408223201174743 0.0888671875 0.17621145374449337 diff --git a/VOC/labels/train/01650.txt b/VOC/labels/train/01650.txt new file mode 100644 index 0000000..f928c82 --- /dev/null +++ b/VOC/labels/train/01650.txt @@ -0,0 +1,2 @@ +1 0.37744140625 0.21435546875 0.1298828125 0.1884765625 +1 0.62109375 0.1376953125 0.16015625 0.19140625 diff --git a/VOC/labels/train/01660.txt b/VOC/labels/train/01660.txt new file mode 100644 index 0000000..5f96b36 --- /dev/null +++ b/VOC/labels/train/01660.txt @@ -0,0 +1,3 @@ +1 0.309375 0.4712962962962963 0.10416666666666667 0.21296296296296297 +1 0.6135416666666667 0.47314814814814815 0.1125 0.2537037037037037 +1 0.8645833333333334 0.3074074074074074 0.15625 0.40370370370370373 diff --git a/VOC/labels/train/01670.txt b/VOC/labels/train/01670.txt new file mode 100644 index 0000000..7bb2ef5 --- /dev/null +++ b/VOC/labels/train/01670.txt @@ -0,0 +1 @@ +1 0.5421875 0.45729166666666665 0.1875 0.28125 diff --git a/VOC/labels/train/01690.txt b/VOC/labels/train/01690.txt new file mode 100644 index 0000000..a7378f9 --- /dev/null +++ b/VOC/labels/train/01690.txt @@ -0,0 +1 @@ +1 0.6171875 0.328125 0.1875 0.26875 diff --git a/VOC/labels/train/01710.txt b/VOC/labels/train/01710.txt new file mode 100644 index 0000000..59eb1e8 --- /dev/null +++ b/VOC/labels/train/01710.txt @@ -0,0 +1 @@ +1 0.47119140625 0.16699029126213594 0.2548828125 0.2174757281553398 diff --git a/VOC/labels/train/01720.txt b/VOC/labels/train/01720.txt new file mode 100644 index 0000000..d8fe170 --- /dev/null +++ b/VOC/labels/train/01720.txt @@ -0,0 +1,2 @@ +1 0.42724609375 0.10866666666666666 0.0966796875 0.15333333333333332 +1 0.61181640625 0.11533333333333333 0.0810546875 0.108 diff --git a/VOC/labels/train/01730.txt b/VOC/labels/train/01730.txt new file mode 100644 index 0000000..f99a701 --- /dev/null +++ b/VOC/labels/train/01730.txt @@ -0,0 +1 @@ +1 0.49843750000000003 0.5177083333333333 0.15937500000000002 0.23541666666666666 diff --git a/VOC/labels/train/01750.txt b/VOC/labels/train/01750.txt new file mode 100644 index 0000000..b7a73a4 --- /dev/null +++ b/VOC/labels/train/01750.txt @@ -0,0 +1 @@ +1 0.5625 0.46041666666666664 0.178125 0.2833333333333333 diff --git a/VOC/labels/train/01780.txt b/VOC/labels/train/01780.txt new file mode 100644 index 0000000..c800afc --- /dev/null +++ b/VOC/labels/train/01780.txt @@ -0,0 +1 @@ +1 0.388671875 0.39013671875 0.439453125 0.5517578125 diff --git a/VOC/labels/train/01790.txt b/VOC/labels/train/01790.txt new file mode 100644 index 0000000..23163a0 --- /dev/null +++ b/VOC/labels/train/01790.txt @@ -0,0 +1 @@ +1 0.5140625 0.3527777777777778 0.16979166666666667 0.38703703703703707 diff --git a/VOC/labels/train/01800.txt b/VOC/labels/train/01800.txt new file mode 100644 index 0000000..b295e3c --- /dev/null +++ b/VOC/labels/train/01800.txt @@ -0,0 +1 @@ +1 0.49267578125 0.26758204956463494 0.4326171875 0.3904889484259879 diff --git a/VOC/labels/train/01810.txt b/VOC/labels/train/01810.txt new file mode 100644 index 0000000..62874d6 --- /dev/null +++ b/VOC/labels/train/01810.txt @@ -0,0 +1 @@ +1 0.4931640625 0.29248046875 0.302734375 0.4052734375 diff --git a/VOC/labels/train/01820.txt b/VOC/labels/train/01820.txt new file mode 100644 index 0000000..c483fb7 --- /dev/null +++ b/VOC/labels/train/01820.txt @@ -0,0 +1 @@ +1 0.63046875 0.403125 0.1609375 0.2520833333333333 diff --git a/VOC/labels/train/01830.txt b/VOC/labels/train/01830.txt new file mode 100644 index 0000000..554e1ba --- /dev/null +++ b/VOC/labels/train/01830.txt @@ -0,0 +1 @@ +1 0.49140625000000004 0.4010416666666667 0.2015625 0.30625 diff --git a/VOC/labels/train/01840.txt b/VOC/labels/train/01840.txt new file mode 100644 index 0000000..8c4f963 --- /dev/null +++ b/VOC/labels/train/01840.txt @@ -0,0 +1 @@ +1 0.52978515625 0.2962239583333333 0.4814453125 0.42578125 diff --git a/VOC/labels/train/01850.txt b/VOC/labels/train/01850.txt new file mode 100644 index 0000000..bf02a99 --- /dev/null +++ b/VOC/labels/train/01850.txt @@ -0,0 +1 @@ +1 0.46923828125 0.22233072916666666 0.4072265625 0.369140625 diff --git a/VOC/labels/train/01860.txt b/VOC/labels/train/01860.txt new file mode 100644 index 0000000..7aaf286 --- /dev/null +++ b/VOC/labels/train/01860.txt @@ -0,0 +1 @@ +1 0.5515625000000001 0.36875 0.18125000000000002 0.275 diff --git a/VOC/labels/train/01870.txt b/VOC/labels/train/01870.txt new file mode 100644 index 0000000..edcd10f --- /dev/null +++ b/VOC/labels/train/01870.txt @@ -0,0 +1 @@ +1 0.56015625 0.40729166666666666 0.16718750000000002 0.25625 diff --git a/VOC/labels/train/01880.txt b/VOC/labels/train/01880.txt new file mode 100644 index 0000000..bd166d2 --- /dev/null +++ b/VOC/labels/train/01880.txt @@ -0,0 +1,6 @@ +1 0.17724609375 0.10495283018867924 0.0673828125 0.09669811320754716 +1 0.32861328125 0.09375 0.0654296875 0.09316037735849056 +1 0.50048828125 0.09610849056603774 0.0712890625 0.1025943396226415 +1 0.6298828125 0.08431603773584906 0.068359375 0.09787735849056603 +1 0.74072265625 0.11851415094339622 0.0634765625 0.09787735849056603 +1 0.87744140625 0.08077830188679246 0.0771484375 0.1025943396226415 diff --git a/VOC/labels/train/01890.txt b/VOC/labels/train/01890.txt new file mode 100644 index 0000000..537da50 --- /dev/null +++ b/VOC/labels/train/01890.txt @@ -0,0 +1 @@ +1 0.2861328125 0.41594454072790293 0.2109375 0.537261698440208 diff --git a/VOC/labels/train/01900.txt b/VOC/labels/train/01900.txt new file mode 100644 index 0000000..445ff2b --- /dev/null +++ b/VOC/labels/train/01900.txt @@ -0,0 +1 @@ +1 0.56796875 0.3989583333333333 0.19843750000000002 0.29375 diff --git a/VOC/labels/train/01910.txt b/VOC/labels/train/01910.txt new file mode 100644 index 0000000..0eab4be --- /dev/null +++ b/VOC/labels/train/01910.txt @@ -0,0 +1 @@ +1 0.4990234375 0.33844647519582244 0.65625 0.5163185378590078 diff --git a/VOC/labels/train/01930.txt b/VOC/labels/train/01930.txt new file mode 100644 index 0000000..1f5ce46 --- /dev/null +++ b/VOC/labels/train/01930.txt @@ -0,0 +1,2 @@ +1 0.47705078125 0.18012820512820513 0.0966796875 0.13974358974358975 +1 0.71044921875 0.257051282051282 0.0791015625 0.14487179487179488 diff --git a/VOC/labels/train/01940.txt b/VOC/labels/train/01940.txt new file mode 100644 index 0000000..16b79aa --- /dev/null +++ b/VOC/labels/train/01940.txt @@ -0,0 +1 @@ +1 0.59375 0.3885416666666667 0.17500000000000002 0.2520833333333333 diff --git a/VOC/labels/train/01950.txt b/VOC/labels/train/01950.txt new file mode 100644 index 0000000..9a9fc0a --- /dev/null +++ b/VOC/labels/train/01950.txt @@ -0,0 +1 @@ +1 0.474609375 0.24523809523809526 0.251953125 0.37619047619047624 diff --git a/VOC/labels/train/01960.txt b/VOC/labels/train/01960.txt new file mode 100644 index 0000000..52eeab2 --- /dev/null +++ b/VOC/labels/train/01960.txt @@ -0,0 +1,3 @@ +1 0.323 0.27999999999999997 0.21 0.3466666666666667 +1 0.489 0.5106666666666666 0.146 0.2373333333333333 +1 0.8150000000000001 0.43466666666666665 0.222 0.2826666666666667 diff --git a/VOC/labels/train/01970.txt b/VOC/labels/train/01970.txt new file mode 100644 index 0000000..1ff125d --- /dev/null +++ b/VOC/labels/train/01970.txt @@ -0,0 +1 @@ +1 0.4375 0.2867540029112082 0.38671875 0.35516739446870454 diff --git a/VOC/labels/train/01980.txt b/VOC/labels/train/01980.txt new file mode 100644 index 0000000..1e3a56a --- /dev/null +++ b/VOC/labels/train/01980.txt @@ -0,0 +1,4 @@ +1 0.29052734375 0.27519893899204245 0.1044921875 0.1445623342175066 +1 0.46044921875 0.2652519893899204 0.1064453125 0.17771883289124668 +1 0.62060546875 0.09681697612732094 0.0830078125 0.14058355437665782 +1 0.73828125 0.2791777188328912 0.09765625 0.16578249336870027 diff --git a/VOC/labels/train/02000.txt b/VOC/labels/train/02000.txt new file mode 100644 index 0000000..4096333 --- /dev/null +++ b/VOC/labels/train/02000.txt @@ -0,0 +1 @@ +1 0.640625 0.353515625 0.33203125 0.462890625 diff --git a/VOC/labels/train/02010.txt b/VOC/labels/train/02010.txt new file mode 100644 index 0000000..f8b34af --- /dev/null +++ b/VOC/labels/train/02010.txt @@ -0,0 +1 @@ +1 0.46718750000000003 0.3885416666666667 0.22812500000000002 0.32708333333333334 diff --git a/VOC/labels/train/02020.txt b/VOC/labels/train/02020.txt new file mode 100644 index 0000000..c2d0300 --- /dev/null +++ b/VOC/labels/train/02020.txt @@ -0,0 +1 @@ +1 0.52783203125 0.18489583333333331 0.2763671875 0.2265625 diff --git a/VOC/labels/train/02030.txt b/VOC/labels/train/02030.txt new file mode 100644 index 0000000..f0d463d --- /dev/null +++ b/VOC/labels/train/02030.txt @@ -0,0 +1 @@ +1 0.52109375 0.36041666666666666 0.1953125 0.3625 diff --git a/VOC/labels/train/02040.txt b/VOC/labels/train/02040.txt new file mode 100644 index 0000000..404c56d --- /dev/null +++ b/VOC/labels/train/02040.txt @@ -0,0 +1 @@ +1 0.46240234375 0.4329268292682927 0.4541015625 0.6951219512195121 diff --git a/VOC/labels/train/02050.txt b/VOC/labels/train/02050.txt new file mode 100644 index 0000000..2b7da0a --- /dev/null +++ b/VOC/labels/train/02050.txt @@ -0,0 +1 @@ +1 0.4658203125 0.19050802139037432 0.234375 0.19385026737967914 diff --git a/VOC/labels/train/02060.txt b/VOC/labels/train/02060.txt new file mode 100644 index 0000000..257fa2b --- /dev/null +++ b/VOC/labels/train/02060.txt @@ -0,0 +1,3 @@ +1 0.14404296875 0.2240484429065744 0.0947265625 0.24048442906574397 +1 0.4287109375 0.23615916955017302 0.09375 0.2301038062283737 +1 0.81396484375 0.1859861591695502 0.0966796875 0.2301038062283737 diff --git a/VOC/labels/train/02070.txt b/VOC/labels/train/02070.txt new file mode 100644 index 0000000..338496d --- /dev/null +++ b/VOC/labels/train/02070.txt @@ -0,0 +1 @@ +1 0.56796875 0.38958333333333334 0.16718750000000002 0.24166666666666667 diff --git a/VOC/labels/train/02080.txt b/VOC/labels/train/02080.txt new file mode 100644 index 0000000..1d76059 --- /dev/null +++ b/VOC/labels/train/02080.txt @@ -0,0 +1 @@ +1 0.48486328125 0.28828125 0.3740234375 0.390625 diff --git a/VOC/labels/train/02090.txt b/VOC/labels/train/02090.txt new file mode 100644 index 0000000..a7c0343 --- /dev/null +++ b/VOC/labels/train/02090.txt @@ -0,0 +1,2 @@ +1 0.41333333333333333 0.305 0.16533333333333333 0.162 +1 0.648 0.273 0.18133333333333332 0.158 diff --git a/VOC/labels/train/02100.txt b/VOC/labels/train/02100.txt new file mode 100644 index 0000000..4a21e2a --- /dev/null +++ b/VOC/labels/train/02100.txt @@ -0,0 +1,2 @@ +1 0.2703125 0.24537037037037038 0.153125 0.3055555555555556 +1 0.8953125 0.21666666666666667 0.209375 0.3925925925925926 diff --git a/VOC/labels/train/02110.txt b/VOC/labels/train/02110.txt new file mode 100644 index 0000000..ab8c72a --- /dev/null +++ b/VOC/labels/train/02110.txt @@ -0,0 +1 @@ +1 0.46406250000000004 0.4864583333333333 0.1875 0.2895833333333333 diff --git a/VOC/labels/train/02120.txt b/VOC/labels/train/02120.txt new file mode 100644 index 0000000..8214274 --- /dev/null +++ b/VOC/labels/train/02120.txt @@ -0,0 +1 @@ +1 0.37060546875 0.3030560271646859 0.4384765625 0.4499151103565365 diff --git a/VOC/labels/train/02140.txt b/VOC/labels/train/02140.txt new file mode 100644 index 0000000..5fd3ad4 --- /dev/null +++ b/VOC/labels/train/02140.txt @@ -0,0 +1 @@ +1 0.48486328125 0.3048016701461378 0.5615234375 0.5427974947807933 diff --git a/VOC/labels/train/02150.txt b/VOC/labels/train/02150.txt new file mode 100644 index 0000000..e3b153d --- /dev/null +++ b/VOC/labels/train/02150.txt @@ -0,0 +1 @@ +1 0.51953125 0.4010416666666667 0.1703125 0.2604166666666667 diff --git a/VOC/labels/train/02160.txt b/VOC/labels/train/02160.txt new file mode 100644 index 0000000..28dd31c --- /dev/null +++ b/VOC/labels/train/02160.txt @@ -0,0 +1 @@ +1 0.49755859375 0.21868787276341947 0.2470703125 0.2962226640159045 diff --git a/VOC/labels/train/02170.txt b/VOC/labels/train/02170.txt new file mode 100644 index 0000000..f31faba --- /dev/null +++ b/VOC/labels/train/02170.txt @@ -0,0 +1 @@ +1 0.56953125 0.4041666666666667 0.20468750000000002 0.3 diff --git a/VOC/labels/train/02180.txt b/VOC/labels/train/02180.txt new file mode 100644 index 0000000..e76a666 --- /dev/null +++ b/VOC/labels/train/02180.txt @@ -0,0 +1 @@ +1 0.42919921875 0.18619791666666666 0.1572265625 0.24739583333333331 diff --git a/VOC/labels/train/02190.txt b/VOC/labels/train/02190.txt new file mode 100644 index 0000000..a956835 --- /dev/null +++ b/VOC/labels/train/02190.txt @@ -0,0 +1 @@ +1 0.5048828125 0.4934114202049781 0.291015625 0.6617862371888726 diff --git a/VOC/labels/train/02200.txt b/VOC/labels/train/02200.txt new file mode 100644 index 0000000..bf6d37e --- /dev/null +++ b/VOC/labels/train/02200.txt @@ -0,0 +1 @@ +1 0.45166015625 0.240234375 0.4423828125 0.35546875 diff --git a/VOC/labels/train/02210.txt b/VOC/labels/train/02210.txt new file mode 100644 index 0000000..5131b36 --- /dev/null +++ b/VOC/labels/train/02210.txt @@ -0,0 +1 @@ +1 0.58359375 0.46249999999999997 0.1953125 0.2916666666666667 diff --git a/VOC/labels/train/02220.txt b/VOC/labels/train/02220.txt new file mode 100644 index 0000000..f49d3fe --- /dev/null +++ b/VOC/labels/train/02220.txt @@ -0,0 +1 @@ +1 0.6296875000000001 0.3989583333333333 0.20625000000000002 0.28125 diff --git a/VOC/labels/train/02230.txt b/VOC/labels/train/02230.txt new file mode 100644 index 0000000..78262c5 --- /dev/null +++ b/VOC/labels/train/02230.txt @@ -0,0 +1 @@ +1 0.5421875 0.32916666666666666 0.16562500000000002 0.25 diff --git a/VOC/labels/train/02240.txt b/VOC/labels/train/02240.txt new file mode 100644 index 0000000..41f6f40 --- /dev/null +++ b/VOC/labels/train/02240.txt @@ -0,0 +1,2 @@ +1 0.44384765625 0.41421143847487 0.0849609375 0.22530329289428075 +1 0.5732421875 0.22010398613518195 0.123046875 0.24263431542461003 diff --git a/VOC/labels/train/02250.txt b/VOC/labels/train/02250.txt new file mode 100644 index 0000000..00850e4 --- /dev/null +++ b/VOC/labels/train/02250.txt @@ -0,0 +1 @@ +1 0.55859375 0.18033854166666666 0.27734375 0.203125 diff --git a/VOC/labels/train/02260.txt b/VOC/labels/train/02260.txt new file mode 100644 index 0000000..33b321b --- /dev/null +++ b/VOC/labels/train/02260.txt @@ -0,0 +1 @@ +1 0.44873046875 0.14264619019492025 0.2080078125 0.17542823390431186 diff --git a/VOC/labels/train/02270.txt b/VOC/labels/train/02270.txt new file mode 100644 index 0000000..0db30c6 --- /dev/null +++ b/VOC/labels/train/02270.txt @@ -0,0 +1 @@ +1 0.115 0.575075075075075 0.158 0.22522522522522523 diff --git a/VOC/labels/train/02280.txt b/VOC/labels/train/02280.txt new file mode 100644 index 0000000..06c51e9 --- /dev/null +++ b/VOC/labels/train/02280.txt @@ -0,0 +1 @@ +1 0.56953125 0.4708333333333333 0.19843750000000002 0.3458333333333333 diff --git a/VOC/labels/train/02290.txt b/VOC/labels/train/02290.txt new file mode 100644 index 0000000..503e210 --- /dev/null +++ b/VOC/labels/train/02290.txt @@ -0,0 +1 @@ +1 0.30615234375 0.48871527777777773 0.3798828125 0.9322916666666666 diff --git a/VOC/labels/train/02300.txt b/VOC/labels/train/02300.txt new file mode 100644 index 0000000..b1f5e50 --- /dev/null +++ b/VOC/labels/train/02300.txt @@ -0,0 +1 @@ +1 0.5281250000000001 0.5072916666666667 0.184375 0.28541666666666665 diff --git a/VOC/labels/train/02310.txt b/VOC/labels/train/02310.txt new file mode 100644 index 0000000..81754b5 --- /dev/null +++ b/VOC/labels/train/02310.txt @@ -0,0 +1 @@ +1 0.43671875000000004 0.4375 0.20468750000000002 0.325 diff --git a/VOC/labels/train/02320.txt b/VOC/labels/train/02320.txt new file mode 100644 index 0000000..b0502ff --- /dev/null +++ b/VOC/labels/train/02320.txt @@ -0,0 +1,3 @@ +1 0.1552734375 0.22286079182630908 0.1015625 0.16219667943805877 +1 0.38134765625 0.2413793103448276 0.0888671875 0.13793103448275862 +1 0.703125 0.2611749680715198 0.087890625 0.13665389527458494 diff --git a/VOC/labels/train/02330.txt b/VOC/labels/train/02330.txt new file mode 100644 index 0000000..782dd94 --- /dev/null +++ b/VOC/labels/train/02330.txt @@ -0,0 +1 @@ +1 0.46044921875 0.28604471858134156 0.3759765625 0.3438704703161141 diff --git a/VOC/labels/train/02350.txt b/VOC/labels/train/02350.txt new file mode 100644 index 0000000..f0b4901 --- /dev/null +++ b/VOC/labels/train/02350.txt @@ -0,0 +1,4 @@ +1 0.631 0.444 0.074 0.13066666666666665 +1 0.515 0.4933333333333333 0.078 0.112 +1 0.393 0.448 0.078 0.12266666666666666 +1 0.25 0.5213333333333333 0.088 0.11466666666666667 diff --git a/VOC/labels/train/02360.txt b/VOC/labels/train/02360.txt new file mode 100644 index 0000000..e190ec3 --- /dev/null +++ b/VOC/labels/train/02360.txt @@ -0,0 +1 @@ +1 0.55 0.3677083333333333 0.20625000000000002 0.3229166666666667 diff --git a/VOC/labels/train/02370.txt b/VOC/labels/train/02370.txt new file mode 100644 index 0000000..d894b79 --- /dev/null +++ b/VOC/labels/train/02370.txt @@ -0,0 +1 @@ +1 0.59912109375 0.32650073206442165 0.2177734375 0.35431918008784774 diff --git a/VOC/labels/train/02380.txt b/VOC/labels/train/02380.txt new file mode 100644 index 0000000..3abdcb1 --- /dev/null +++ b/VOC/labels/train/02380.txt @@ -0,0 +1 @@ +1 0.50439453125 0.27115885416666663 0.2607421875 0.263671875 diff --git a/VOC/labels/train/02390.txt b/VOC/labels/train/02390.txt new file mode 100644 index 0000000..151e43d --- /dev/null +++ b/VOC/labels/train/02390.txt @@ -0,0 +1,2 @@ +1 0.25927734375 0.3834519572953736 0.1044921875 0.24377224199288255 +1 0.69921875 0.24288256227758007 0.16015625 0.297153024911032 diff --git a/VOC/labels/train/02400.txt b/VOC/labels/train/02400.txt new file mode 100644 index 0000000..bb8cfad --- /dev/null +++ b/VOC/labels/train/02400.txt @@ -0,0 +1 @@ +1 0.5437500000000001 0.42291666666666666 0.146875 0.25 diff --git a/VOC/labels/train/02410.txt b/VOC/labels/train/02410.txt new file mode 100644 index 0000000..b28c6fc --- /dev/null +++ b/VOC/labels/train/02410.txt @@ -0,0 +1 @@ +1 0.5984375000000001 0.45208333333333334 0.125 0.19583333333333333 diff --git a/VOC/labels/train/02420.txt b/VOC/labels/train/02420.txt new file mode 100644 index 0000000..959a0c2 --- /dev/null +++ b/VOC/labels/train/02420.txt @@ -0,0 +1 @@ +1 0.5554687500000001 0.3229166666666667 0.2234375 0.3 diff --git a/VOC/labels/train/02430.txt b/VOC/labels/train/02430.txt new file mode 100644 index 0000000..bde9693 --- /dev/null +++ b/VOC/labels/train/02430.txt @@ -0,0 +1 @@ +1 0.53125 0.44895833333333335 0.16562500000000002 0.24791666666666667 diff --git a/VOC/labels/train/02440.txt b/VOC/labels/train/02440.txt new file mode 100644 index 0000000..355a8f5 --- /dev/null +++ b/VOC/labels/train/02440.txt @@ -0,0 +1,2 @@ +1 0.4015625 0.4 0.10104166666666667 0.24074074074074076 +1 0.7161458333333334 0.3944444444444445 0.11562499999999999 0.25925925925925924 diff --git a/VOC/labels/train/02460.txt b/VOC/labels/train/02460.txt new file mode 100644 index 0000000..5c2da7a --- /dev/null +++ b/VOC/labels/train/02460.txt @@ -0,0 +1,2 @@ +1 0.36279296875 0.22990654205607478 0.1416015625 0.34392523364485983 +1 0.60693359375 0.17102803738317757 0.1513671875 0.30467289719626167 diff --git a/VOC/labels/train/02470.txt b/VOC/labels/train/02470.txt new file mode 100644 index 0000000..9c54ff3 --- /dev/null +++ b/VOC/labels/train/02470.txt @@ -0,0 +1 @@ +1 0.53466796875 0.2282685512367491 0.3095703125 0.2968197879858657 diff --git a/VOC/labels/train/02480.txt b/VOC/labels/train/02480.txt new file mode 100644 index 0000000..07050a7 --- /dev/null +++ b/VOC/labels/train/02480.txt @@ -0,0 +1 @@ +1 0.509375 0.3927083333333333 0.234375 0.35625 diff --git a/VOC/labels/train/02500.txt b/VOC/labels/train/02500.txt new file mode 100644 index 0000000..a2a2f68 --- /dev/null +++ b/VOC/labels/train/02500.txt @@ -0,0 +1,3 @@ +1 0.2890625 0.3351851851851852 0.09895833333333333 0.1925925925925926 +1 0.42864583333333334 0.4 0.04895833333333333 0.10370370370370371 +1 0.7567708333333333 0.25833333333333336 0.06979166666666667 0.12407407407407407 diff --git a/VOC/labels/train/02510.txt b/VOC/labels/train/02510.txt new file mode 100644 index 0000000..22ec62f --- /dev/null +++ b/VOC/labels/train/02510.txt @@ -0,0 +1 @@ +1 0.6376953125 0.1299212598425197 0.31640625 0.21709786276715412 diff --git a/VOC/labels/train/02520.txt b/VOC/labels/train/02520.txt new file mode 100644 index 0000000..2069102 --- /dev/null +++ b/VOC/labels/train/02520.txt @@ -0,0 +1 @@ +1 0.54345703125 0.17564655172413793 0.2626953125 0.23204022988505746 diff --git a/VOC/labels/train/02540.txt b/VOC/labels/train/02540.txt new file mode 100644 index 0000000..b92f225 --- /dev/null +++ b/VOC/labels/train/02540.txt @@ -0,0 +1 @@ +1 0.578125 0.375 0.19687500000000002 0.275 diff --git a/VOC/labels/train/02550.txt b/VOC/labels/train/02550.txt new file mode 100644 index 0000000..b59d2d1 --- /dev/null +++ b/VOC/labels/train/02550.txt @@ -0,0 +1,2 @@ +1 0.25439453125 0.234375 0.1416015625 0.275 +1 0.51611328125 0.17109375000000002 0.1611328125 0.2765625 diff --git a/VOC/labels/train/02560.txt b/VOC/labels/train/02560.txt new file mode 100644 index 0000000..7791202 --- /dev/null +++ b/VOC/labels/train/02560.txt @@ -0,0 +1 @@ +1 0.37353515625 0.2442002442002442 0.2255859375 0.3882783882783883 diff --git a/VOC/labels/train/02570.txt b/VOC/labels/train/02570.txt new file mode 100644 index 0000000..b63b315 --- /dev/null +++ b/VOC/labels/train/02570.txt @@ -0,0 +1 @@ +1 0.4375 0.3788961038961039 0.478515625 0.4642857142857143 diff --git a/VOC/labels/train/02580.txt b/VOC/labels/train/02580.txt new file mode 100644 index 0000000..95ca170 --- /dev/null +++ b/VOC/labels/train/02580.txt @@ -0,0 +1 @@ +1 0.5171875 0.340625 0.19062500000000002 0.2895833333333333 diff --git a/VOC/labels/train/02590.txt b/VOC/labels/train/02590.txt new file mode 100644 index 0000000..ced0da7 --- /dev/null +++ b/VOC/labels/train/02590.txt @@ -0,0 +1 @@ +1 0.5859375 0.37916666666666665 0.178125 0.26666666666666666 diff --git a/VOC/labels/train/02600.txt b/VOC/labels/train/02600.txt new file mode 100644 index 0000000..fb83cc4 --- /dev/null +++ b/VOC/labels/train/02600.txt @@ -0,0 +1 @@ +1 0.50625 0.4354166666666667 0.19062500000000002 0.29583333333333334 diff --git a/VOC/labels/train/02620.txt b/VOC/labels/train/02620.txt new file mode 100644 index 0000000..d0cbd2e --- /dev/null +++ b/VOC/labels/train/02620.txt @@ -0,0 +1 @@ +1 0.52734375 0.37173629242819844 0.642578125 0.641644908616188 diff --git a/VOC/labels/train/02630.txt b/VOC/labels/train/02630.txt new file mode 100644 index 0000000..25cc112 --- /dev/null +++ b/VOC/labels/train/02630.txt @@ -0,0 +1 @@ +1 0.55224609375 0.4 0.3388671875 0.6235294117647059 diff --git a/VOC/labels/train/02640.txt b/VOC/labels/train/02640.txt new file mode 100644 index 0000000..4db82c0 --- /dev/null +++ b/VOC/labels/train/02640.txt @@ -0,0 +1 @@ +1 0.324 0.339 0.37066666666666664 0.382 diff --git a/VOC/labels/train/02650.txt b/VOC/labels/train/02650.txt new file mode 100644 index 0000000..ca90fb1 --- /dev/null +++ b/VOC/labels/train/02650.txt @@ -0,0 +1 @@ +1 0.50625 0.35104166666666664 0.215625 0.33541666666666664 diff --git a/VOC/labels/train/02660.txt b/VOC/labels/train/02660.txt new file mode 100644 index 0000000..73d418f --- /dev/null +++ b/VOC/labels/train/02660.txt @@ -0,0 +1 @@ +1 0.56640625 0.44479166666666664 0.1953125 0.3020833333333333 diff --git a/VOC/labels/train/02670.txt b/VOC/labels/train/02670.txt new file mode 100644 index 0000000..36702c0 --- /dev/null +++ b/VOC/labels/train/02670.txt @@ -0,0 +1 @@ +1 0.53125 0.4306640625 0.23828125 0.16861979166666666 diff --git a/VOC/labels/train/02680.txt b/VOC/labels/train/02680.txt new file mode 100644 index 0000000..d6bf913 --- /dev/null +++ b/VOC/labels/train/02680.txt @@ -0,0 +1,2 @@ +1 0.255859375 0.23670212765957446 0.177734375 0.2553191489361702 +1 0.71826171875 0.2493351063829787 0.1826171875 0.2859042553191489 diff --git a/VOC/labels/train/02690.txt b/VOC/labels/train/02690.txt new file mode 100644 index 0000000..1a5e00e --- /dev/null +++ b/VOC/labels/train/02690.txt @@ -0,0 +1,2 @@ +1 0.356 0.30133333333333334 0.14 0.21866666666666665 +1 0.48 0.3 0.14 0.22666666666666666 diff --git a/VOC/labels/train/02700.txt b/VOC/labels/train/02700.txt new file mode 100644 index 0000000..25d9f47 --- /dev/null +++ b/VOC/labels/train/02700.txt @@ -0,0 +1 @@ +1 0.59296875 0.33541666666666664 0.2234375 0.325 diff --git a/VOC/labels/train/02710.txt b/VOC/labels/train/02710.txt new file mode 100644 index 0000000..7f5819a --- /dev/null +++ b/VOC/labels/train/02710.txt @@ -0,0 +1 @@ +1 0.766 0.503003003003003 0.164 0.3033033033033033 diff --git a/VOC/labels/train/02720.txt b/VOC/labels/train/02720.txt new file mode 100644 index 0000000..d78d156 --- /dev/null +++ b/VOC/labels/train/02720.txt @@ -0,0 +1,2 @@ +1 0.4421875 0.38981481481481484 0.10104166666666667 0.23148148148148148 +1 0.596875 0.41944444444444445 0.11041666666666666 0.24629629629629632 diff --git a/VOC/labels/train/02730.txt b/VOC/labels/train/02730.txt new file mode 100644 index 0000000..1465ffa --- /dev/null +++ b/VOC/labels/train/02730.txt @@ -0,0 +1 @@ +1 0.41500000000000004 0.312 0.122 0.20266666666666666 diff --git a/VOC/labels/train/02740.txt b/VOC/labels/train/02740.txt new file mode 100644 index 0000000..35e9e28 --- /dev/null +++ b/VOC/labels/train/02740.txt @@ -0,0 +1 @@ +1 0.451171875 0.1806640625 0.310546875 0.2532552083333333 diff --git a/VOC/labels/train/02770.txt b/VOC/labels/train/02770.txt new file mode 100644 index 0000000..1f0b3c9 --- /dev/null +++ b/VOC/labels/train/02770.txt @@ -0,0 +1 @@ +1 0.5359375000000001 0.41770833333333335 0.225 0.36875 diff --git a/VOC/labels/train/02790.txt b/VOC/labels/train/02790.txt new file mode 100644 index 0000000..c3940a8 --- /dev/null +++ b/VOC/labels/train/02790.txt @@ -0,0 +1 @@ +1 0.53955078125 0.31926406926406925 0.4873046875 0.4898989898989899 diff --git a/VOC/labels/train/02800.txt b/VOC/labels/train/02800.txt new file mode 100644 index 0000000..6f341f4 --- /dev/null +++ b/VOC/labels/train/02800.txt @@ -0,0 +1 @@ +1 0.51796875 0.475 0.2015625 0.3 diff --git a/VOC/labels/train/02810.txt b/VOC/labels/train/02810.txt new file mode 100644 index 0000000..e1bdf08 --- /dev/null +++ b/VOC/labels/train/02810.txt @@ -0,0 +1 @@ +1 0.5632812500000001 0.4125 0.21406250000000002 0.3 diff --git a/VOC/labels/train/02820.txt b/VOC/labels/train/02820.txt new file mode 100644 index 0000000..f04b1c4 --- /dev/null +++ b/VOC/labels/train/02820.txt @@ -0,0 +1 @@ +1 0.4609375 0.41562499999999997 0.1875 0.27291666666666664 diff --git a/VOC/labels/train/02830.txt b/VOC/labels/train/02830.txt new file mode 100644 index 0000000..3591f03 --- /dev/null +++ b/VOC/labels/train/02830.txt @@ -0,0 +1,2 @@ +1 0.2724609375 0.14138204924543288 0.162109375 0.15409054805401112 +1 0.5966796875 0.13621922160444797 0.177734375 0.16441620333598092 diff --git a/VOC/labels/train/02840.txt b/VOC/labels/train/02840.txt new file mode 100644 index 0000000..76381c7 --- /dev/null +++ b/VOC/labels/train/02840.txt @@ -0,0 +1,3 @@ +1 0.21337890625 0.10864864864864865 0.1376953125 0.20432432432432432 +1 0.39111328125 0.14972972972972973 0.1513671875 0.18486486486486486 +1 0.87548828125 0.13135135135135134 0.1689453125 0.22378378378378377 diff --git a/VOC/labels/train/02850.txt b/VOC/labels/train/02850.txt new file mode 100644 index 0000000..fa9a64c --- /dev/null +++ b/VOC/labels/train/02850.txt @@ -0,0 +1 @@ +1 0.496875 0.3989583333333333 0.20625000000000002 0.31875 diff --git a/VOC/labels/train/02860.txt b/VOC/labels/train/02860.txt new file mode 100644 index 0000000..0400196 --- /dev/null +++ b/VOC/labels/train/02860.txt @@ -0,0 +1 @@ +1 0.46044921875 0.17833981841763943 0.3583984375 0.2814526588845655 diff --git a/VOC/labels/train/02870.txt b/VOC/labels/train/02870.txt new file mode 100644 index 0000000..af19a49 --- /dev/null +++ b/VOC/labels/train/02870.txt @@ -0,0 +1 @@ +1 0.498046875 0.3778901734104046 0.505859375 0.4869942196531792 diff --git a/VOC/labels/train/02880.txt b/VOC/labels/train/02880.txt new file mode 100644 index 0000000..17495e0 --- /dev/null +++ b/VOC/labels/train/02880.txt @@ -0,0 +1,2 @@ +1 0.3182291666666667 0.31574074074074077 0.165625 0.30185185185185187 +1 0.8859374999999999 0.2564814814814815 0.228125 0.4425925925925926 diff --git a/VOC/labels/train/02890.txt b/VOC/labels/train/02890.txt new file mode 100644 index 0000000..fc6a52b --- /dev/null +++ b/VOC/labels/train/02890.txt @@ -0,0 +1 @@ +1 0.55078125 0.37916666666666665 0.24531250000000002 0.35 diff --git a/VOC/labels/train/02900.txt b/VOC/labels/train/02900.txt new file mode 100644 index 0000000..f2f6a29 --- /dev/null +++ b/VOC/labels/train/02900.txt @@ -0,0 +1 @@ +1 0.53828125 0.45208333333333334 0.1484375 0.24583333333333332 diff --git a/VOC/labels/train/02930.txt b/VOC/labels/train/02930.txt new file mode 100644 index 0000000..a3bc9d2 --- /dev/null +++ b/VOC/labels/train/02930.txt @@ -0,0 +1 @@ +1 0.3466796875 0.23871527777777776 0.22265625 0.4392361111111111 diff --git a/VOC/labels/train/02940.txt b/VOC/labels/train/02940.txt new file mode 100644 index 0000000..ac67ac9 --- /dev/null +++ b/VOC/labels/train/02940.txt @@ -0,0 +1 @@ +1 0.56689453125 0.3319783197831978 0.4658203125 0.5158084914182475 diff --git a/VOC/labels/train/02950.txt b/VOC/labels/train/02950.txt new file mode 100644 index 0000000..04826f4 --- /dev/null +++ b/VOC/labels/train/02950.txt @@ -0,0 +1,2 @@ +1 0.2953125 0.39814814814814814 0.165625 0.3925925925925926 +1 0.7671875 0.4027777777777778 0.165625 0.3648148148148148 diff --git a/VOC/labels/train/02960.txt b/VOC/labels/train/02960.txt new file mode 100644 index 0000000..b37d90d --- /dev/null +++ b/VOC/labels/train/02960.txt @@ -0,0 +1 @@ +1 0.48203125 0.4395833333333333 0.23593750000000002 0.3458333333333333 diff --git a/VOC/labels/train/02970.txt b/VOC/labels/train/02970.txt new file mode 100644 index 0000000..fd912a0 --- /dev/null +++ b/VOC/labels/train/02970.txt @@ -0,0 +1 @@ +1 0.35000000000000003 0.22822822822822822 0.168 0.26426426426426425 diff --git a/VOC/labels/train/02980.txt b/VOC/labels/train/02980.txt new file mode 100644 index 0000000..24087ae --- /dev/null +++ b/VOC/labels/train/02980.txt @@ -0,0 +1 @@ +1 0.6904296875 0.4019033674963397 0.244140625 0.4524158125915081 diff --git a/VOC/labels/train/02990.txt b/VOC/labels/train/02990.txt new file mode 100644 index 0000000..efbac85 --- /dev/null +++ b/VOC/labels/train/02990.txt @@ -0,0 +1 @@ +1 0.5320312500000001 0.3125 0.2078125 0.35833333333333334 diff --git a/VOC/labels/train/03000.txt b/VOC/labels/train/03000.txt new file mode 100644 index 0000000..9dfb8ee --- /dev/null +++ b/VOC/labels/train/03000.txt @@ -0,0 +1 @@ +1 0.5166015625 0.1649519890260631 0.251953125 0.21056241426611796 diff --git a/VOC/labels/train/03010.txt b/VOC/labels/train/03010.txt new file mode 100644 index 0000000..640ba8a --- /dev/null +++ b/VOC/labels/train/03010.txt @@ -0,0 +1 @@ +1 0.494140625 0.3870056497175141 0.36328125 0.6214689265536724 diff --git a/VOC/labels/train/03020.txt b/VOC/labels/train/03020.txt new file mode 100644 index 0000000..006d48f --- /dev/null +++ b/VOC/labels/train/03020.txt @@ -0,0 +1 @@ +1 0.49560546875 0.3524829600778968 0.4423828125 0.5939629990262902 diff --git a/VOC/labels/train/03030.txt b/VOC/labels/train/03030.txt new file mode 100644 index 0000000..8bcc0a0 --- /dev/null +++ b/VOC/labels/train/03030.txt @@ -0,0 +1 @@ +1 0.5088541666666666 0.4027777777777778 0.221875 0.4981481481481482 diff --git a/VOC/labels/train/03040.txt b/VOC/labels/train/03040.txt new file mode 100644 index 0000000..dd0bd81 --- /dev/null +++ b/VOC/labels/train/03040.txt @@ -0,0 +1 @@ +1 0.41357421875 0.17708333333333334 0.1708984375 0.24375 diff --git a/VOC/labels/train/03050.txt b/VOC/labels/train/03050.txt new file mode 100644 index 0000000..4950976 --- /dev/null +++ b/VOC/labels/train/03050.txt @@ -0,0 +1,3 @@ +1 0.146 0.44266666666666665 0.108 0.18666666666666665 +1 0.313 0.484 0.114 0.14133333333333334 +1 0.559 0.4706666666666667 0.058 0.09333333333333332 diff --git a/VOC/labels/train/03060.txt b/VOC/labels/train/03060.txt new file mode 100644 index 0000000..4e21eb9 --- /dev/null +++ b/VOC/labels/train/03060.txt @@ -0,0 +1 @@ +1 0.53828125 0.34375 0.2015625 0.2875 diff --git a/VOC/labels/train/03070.txt b/VOC/labels/train/03070.txt new file mode 100644 index 0000000..a15672b --- /dev/null +++ b/VOC/labels/train/03070.txt @@ -0,0 +1 @@ +1 0.51025390625 0.3758223684210526 0.1728515625 0.38980263157894735 diff --git a/VOC/labels/train/03080.txt b/VOC/labels/train/03080.txt new file mode 100644 index 0000000..ce3c86d --- /dev/null +++ b/VOC/labels/train/03080.txt @@ -0,0 +1 @@ +1 0.45654296875 0.31554524361948955 0.3544921875 0.48491879350348027 diff --git a/VOC/labels/train/03090.txt b/VOC/labels/train/03090.txt new file mode 100644 index 0000000..88515b7 --- /dev/null +++ b/VOC/labels/train/03090.txt @@ -0,0 +1 @@ +1 0.521875 0.5291666666666667 0.2 0.2875 diff --git a/VOC/labels/train/03100.txt b/VOC/labels/train/03100.txt new file mode 100644 index 0000000..982ba62 --- /dev/null +++ b/VOC/labels/train/03100.txt @@ -0,0 +1,4 @@ +1 0.261 0.42342342342342343 0.13 0.26426426426426425 +1 0.453 0.4519519519519519 0.126 0.30930930930930933 +1 0.537 0.5540540540540541 0.078 0.23723723723723725 +1 0.645 0.46546546546546547 0.122 0.25225225225225223 diff --git a/VOC/labels/train/03110.txt b/VOC/labels/train/03110.txt new file mode 100644 index 0000000..00e117b --- /dev/null +++ b/VOC/labels/train/03110.txt @@ -0,0 +1 @@ +1 0.494140625 0.34132124352331605 0.462890625 0.5064766839378239 diff --git a/VOC/labels/train/03120.txt b/VOC/labels/train/03120.txt new file mode 100644 index 0000000..366e1f4 --- /dev/null +++ b/VOC/labels/train/03120.txt @@ -0,0 +1 @@ +1 0.51708984375 0.32877604166666663 0.6083984375 0.4739583333333333 diff --git a/VOC/labels/train/03130.txt b/VOC/labels/train/03130.txt new file mode 100644 index 0000000..4926785 --- /dev/null +++ b/VOC/labels/train/03130.txt @@ -0,0 +1 @@ +1 0.42138671875 0.2075799721835883 0.3955078125 0.28442280945758 diff --git a/VOC/labels/train/03140.txt b/VOC/labels/train/03140.txt new file mode 100644 index 0000000..8cd019d --- /dev/null +++ b/VOC/labels/train/03140.txt @@ -0,0 +1 @@ +1 0.3681640625 0.408203125 0.2890625 0.47265625 diff --git a/VOC/labels/train/03150.txt b/VOC/labels/train/03150.txt new file mode 100644 index 0000000..001b728 --- /dev/null +++ b/VOC/labels/train/03150.txt @@ -0,0 +1 @@ +1 0.50625 0.5010416666666666 0.20625000000000002 0.3145833333333333 diff --git a/VOC/labels/train/03160.txt b/VOC/labels/train/03160.txt new file mode 100644 index 0000000..40c930e --- /dev/null +++ b/VOC/labels/train/03160.txt @@ -0,0 +1 @@ +1 0.4248046875 0.25811688311688313 0.521484375 0.4564935064935065 diff --git a/VOC/labels/train/03180.txt b/VOC/labels/train/03180.txt new file mode 100644 index 0000000..726e778 --- /dev/null +++ b/VOC/labels/train/03180.txt @@ -0,0 +1 @@ +1 0.490234375 0.2043509272467903 0.44140625 0.3459343794579173 diff --git a/VOC/labels/train/03190.txt b/VOC/labels/train/03190.txt new file mode 100644 index 0000000..b19cba5 --- /dev/null +++ b/VOC/labels/train/03190.txt @@ -0,0 +1 @@ +1 0.56171875 0.36666666666666664 0.16718750000000002 0.26666666666666666 diff --git a/VOC/labels/train/03200.txt b/VOC/labels/train/03200.txt new file mode 100644 index 0000000..95cb5f5 --- /dev/null +++ b/VOC/labels/train/03200.txt @@ -0,0 +1 @@ +1 0.50634765625 0.20454545454545453 0.3408203125 0.3401253918495298 diff --git a/VOC/labels/train/03210.txt b/VOC/labels/train/03210.txt new file mode 100644 index 0000000..adaf77f --- /dev/null +++ b/VOC/labels/train/03210.txt @@ -0,0 +1 @@ +1 0.2119140625 0.2934936350777935 0.216796875 0.38613861386138615 diff --git a/VOC/labels/train/03220.txt b/VOC/labels/train/03220.txt new file mode 100644 index 0000000..a1db8e9 --- /dev/null +++ b/VOC/labels/train/03220.txt @@ -0,0 +1 @@ +1 0.3193359375 0.3185763888888889 0.25 0.5711805555555555 diff --git a/VOC/labels/train/03230.txt b/VOC/labels/train/03230.txt new file mode 100644 index 0000000..a70457a --- /dev/null +++ b/VOC/labels/train/03230.txt @@ -0,0 +1,2 @@ +1 0.2548828125 0.41180981595092025 0.15234375 0.15184049079754602 +1 0.42333984375 0.41641104294478526 0.1416015625 0.1441717791411043 diff --git a/VOC/labels/train/03240.txt b/VOC/labels/train/03240.txt new file mode 100644 index 0000000..3326881 --- /dev/null +++ b/VOC/labels/train/03240.txt @@ -0,0 +1 @@ +1 0.51611328125 0.40995607613469986 0.2509765625 0.4890190336749634 diff --git a/VOC/labels/train/03260.txt b/VOC/labels/train/03260.txt new file mode 100644 index 0000000..f7c5c84 --- /dev/null +++ b/VOC/labels/train/03260.txt @@ -0,0 +1 @@ +1 0.494140625 0.28527370855821127 0.5078125 0.4518118735543562 diff --git a/VOC/labels/train/03270.txt b/VOC/labels/train/03270.txt new file mode 100644 index 0000000..ed854e6 --- /dev/null +++ b/VOC/labels/train/03270.txt @@ -0,0 +1 @@ +1 0.47119140625 0.40478515625 0.4404296875 0.4853515625 diff --git a/VOC/labels/train/03280.txt b/VOC/labels/train/03280.txt new file mode 100644 index 0000000..106b0fe --- /dev/null +++ b/VOC/labels/train/03280.txt @@ -0,0 +1 @@ +1 0.5166015625 0.3199013157894737 0.41015625 0.42105263157894735 diff --git a/VOC/labels/train/03290.txt b/VOC/labels/train/03290.txt new file mode 100644 index 0000000..cb6e448 --- /dev/null +++ b/VOC/labels/train/03290.txt @@ -0,0 +1 @@ +1 0.5554687500000001 0.41875 0.17343750000000002 0.2583333333333333 diff --git a/VOC/labels/train/03300.txt b/VOC/labels/train/03300.txt new file mode 100644 index 0000000..1565acf --- /dev/null +++ b/VOC/labels/train/03300.txt @@ -0,0 +1,2 @@ +1 0.60498046875 0.22840409956076135 0.3701171875 0.376281112737921 +1 0.0791015625 0.41654465592972184 0.138671875 0.24597364568081992 diff --git a/VOC/labels/train/03310.txt b/VOC/labels/train/03310.txt new file mode 100644 index 0000000..32890ca --- /dev/null +++ b/VOC/labels/train/03310.txt @@ -0,0 +1 @@ +1 0.5046875 0.37777777777777777 0.23645833333333333 0.6111111111111112 diff --git a/VOC/labels/train/03320.txt b/VOC/labels/train/03320.txt new file mode 100644 index 0000000..186040e --- /dev/null +++ b/VOC/labels/train/03320.txt @@ -0,0 +1 @@ +1 0.5283203125 0.16703296703296702 0.154296875 0.17435897435897435 diff --git a/VOC/labels/train/03330.txt b/VOC/labels/train/03330.txt new file mode 100644 index 0000000..c61f647 --- /dev/null +++ b/VOC/labels/train/03330.txt @@ -0,0 +1 @@ +1 0.5828125000000001 0.471875 0.20625000000000002 0.3229166666666667 diff --git a/VOC/labels/train/03340.txt b/VOC/labels/train/03340.txt new file mode 100644 index 0000000..cb919bb --- /dev/null +++ b/VOC/labels/train/03340.txt @@ -0,0 +1 @@ +1 0.64697265625 0.25045703839122485 0.3193359375 0.43144424131627057 diff --git a/VOC/labels/train/03350.txt b/VOC/labels/train/03350.txt new file mode 100644 index 0000000..f1e5647 --- /dev/null +++ b/VOC/labels/train/03350.txt @@ -0,0 +1 @@ +1 0.51953125 0.43645833333333334 0.22031250000000002 0.3520833333333333 diff --git a/VOC/labels/train/03360.txt b/VOC/labels/train/03360.txt new file mode 100644 index 0000000..029406a --- /dev/null +++ b/VOC/labels/train/03360.txt @@ -0,0 +1 @@ +1 0.5265625 0.434375 0.184375 0.26875 diff --git a/VOC/labels/train/03370.txt b/VOC/labels/train/03370.txt new file mode 100644 index 0000000..7214317 --- /dev/null +++ b/VOC/labels/train/03370.txt @@ -0,0 +1 @@ +1 0.56796875 0.45 0.1765625 0.2708333333333333 diff --git a/VOC/labels/train/03380.txt b/VOC/labels/train/03380.txt new file mode 100644 index 0000000..4234d5c --- /dev/null +++ b/VOC/labels/train/03380.txt @@ -0,0 +1,2 @@ +1 0.77 0.2912912912912913 0.132 0.23423423423423423 +1 0.41600000000000004 0.13663663663663664 0.08 0.14114114114114115 diff --git a/VOC/labels/train/03390.txt b/VOC/labels/train/03390.txt new file mode 100644 index 0000000..0c99585 --- /dev/null +++ b/VOC/labels/train/03390.txt @@ -0,0 +1 @@ +1 0.48486328125 0.22216981132075472 0.2060546875 0.24433962264150944 diff --git a/VOC/labels/train/03400.txt b/VOC/labels/train/03400.txt new file mode 100644 index 0000000..984ef66 --- /dev/null +++ b/VOC/labels/train/03400.txt @@ -0,0 +1 @@ +1 0.51328125 0.44479166666666664 0.19843750000000002 0.3104166666666667 diff --git a/VOC/labels/train/03410.txt b/VOC/labels/train/03410.txt new file mode 100644 index 0000000..8fca366 --- /dev/null +++ b/VOC/labels/train/03410.txt @@ -0,0 +1 @@ +1 0.49531250000000004 0.4302083333333333 0.25 0.3854166666666667 diff --git a/VOC/labels/train/03420.txt b/VOC/labels/train/03420.txt new file mode 100644 index 0000000..5564af7 --- /dev/null +++ b/VOC/labels/train/03420.txt @@ -0,0 +1 @@ +1 0.51123046875 0.2866761162296244 0.4755859375 0.3692416725726435 diff --git a/VOC/labels/train/03430.txt b/VOC/labels/train/03430.txt new file mode 100644 index 0000000..54c9803 --- /dev/null +++ b/VOC/labels/train/03430.txt @@ -0,0 +1 @@ +1 0.4990234375 0.2351369405477622 0.3984375 0.35136940547762197 diff --git a/VOC/labels/train/03440.txt b/VOC/labels/train/03440.txt new file mode 100644 index 0000000..81e0e89 --- /dev/null +++ b/VOC/labels/train/03440.txt @@ -0,0 +1 @@ +1 0.6279296875 0.19965277777777776 0.173828125 0.38888888888888884 diff --git a/VOC/labels/train/03450.txt b/VOC/labels/train/03450.txt new file mode 100644 index 0000000..7f32d41 --- /dev/null +++ b/VOC/labels/train/03450.txt @@ -0,0 +1 @@ +1 0.33544921875 0.310546875 0.1533203125 0.38671875 diff --git a/VOC/labels/train/03460.txt b/VOC/labels/train/03460.txt new file mode 100644 index 0000000..833ac09 --- /dev/null +++ b/VOC/labels/train/03460.txt @@ -0,0 +1 @@ +1 0.52890625 0.403125 0.1859375 0.28541666666666665 diff --git a/VOC/labels/train/03470.txt b/VOC/labels/train/03470.txt new file mode 100644 index 0000000..68ba79c --- /dev/null +++ b/VOC/labels/train/03470.txt @@ -0,0 +1 @@ +1 0.42919921875 0.3693579148124603 0.6650390625 0.59631277813096 diff --git a/VOC/labels/train/03480.txt b/VOC/labels/train/03480.txt new file mode 100644 index 0000000..0587b38 --- /dev/null +++ b/VOC/labels/train/03480.txt @@ -0,0 +1 @@ +1 0.4765625 0.16136363636363638 0.232421875 0.2448051948051948 diff --git a/VOC/labels/train/03490.txt b/VOC/labels/train/03490.txt new file mode 100644 index 0000000..843c7c2 --- /dev/null +++ b/VOC/labels/train/03490.txt @@ -0,0 +1,4 @@ +1 0.28125 0.5527086383601757 0.123046875 0.18887262079062958 +1 0.47314453125 0.4882869692532943 0.1103515625 0.20351390922401172 +1 0.6435546875 0.4758418740849195 0.12109375 0.22840409956076135 +1 0.84375 0.4641288433382138 0.1640625 0.2840409956076135 diff --git a/VOC/labels/train/03500.txt b/VOC/labels/train/03500.txt new file mode 100644 index 0000000..4d1b310 --- /dev/null +++ b/VOC/labels/train/03500.txt @@ -0,0 +1 @@ +1 0.43017578125 0.20245398773006135 0.4150390625 0.35991820040899797 diff --git a/VOC/labels/train/03510.txt b/VOC/labels/train/03510.txt new file mode 100644 index 0000000..1173acc --- /dev/null +++ b/VOC/labels/train/03510.txt @@ -0,0 +1 @@ +1 0.3214285714285714 0.22 0.23529411764705882 0.248 diff --git a/VOC/labels/train/03520.txt b/VOC/labels/train/03520.txt new file mode 100644 index 0000000..7da6ca7 --- /dev/null +++ b/VOC/labels/train/03520.txt @@ -0,0 +1 @@ +1 0.505859375 0.30018331805682863 0.2734375 0.2923923006416132 diff --git a/VOC/labels/train/03530.txt b/VOC/labels/train/03530.txt new file mode 100644 index 0000000..8c59de1 --- /dev/null +++ b/VOC/labels/train/03530.txt @@ -0,0 +1 @@ +1 0.49365234375 0.3204647676161919 0.5048828125 0.4760119940029985 diff --git a/VOC/labels/train/03540.txt b/VOC/labels/train/03540.txt new file mode 100644 index 0000000..ee828f6 --- /dev/null +++ b/VOC/labels/train/03540.txt @@ -0,0 +1 @@ +1 0.7140625 0.5770833333333333 0.25 0.3958333333333333 diff --git a/VOC/labels/train/03550.txt b/VOC/labels/train/03550.txt new file mode 100644 index 0000000..87575b0 --- /dev/null +++ b/VOC/labels/train/03550.txt @@ -0,0 +1 @@ +1 0.49853515625 0.28475336322869954 0.2275390625 0.3632286995515695 diff --git a/VOC/labels/train/03560.txt b/VOC/labels/train/03560.txt new file mode 100644 index 0000000..048692d --- /dev/null +++ b/VOC/labels/train/03560.txt @@ -0,0 +1 @@ +1 0.55517578125 0.292156862745098 0.3427734375 0.28366013071895424 diff --git a/VOC/labels/train/03570.txt b/VOC/labels/train/03570.txt new file mode 100644 index 0000000..fd2e854 --- /dev/null +++ b/VOC/labels/train/03570.txt @@ -0,0 +1 @@ +1 0.490234375 0.287506819421713 0.70703125 0.5455537370430987 diff --git a/VOC/labels/train/03580.txt b/VOC/labels/train/03580.txt new file mode 100644 index 0000000..866cb00 --- /dev/null +++ b/VOC/labels/train/03580.txt @@ -0,0 +1,2 @@ +1 0.31884765625 0.09913419913419913 0.1435546875 0.129004329004329 +1 0.55078125 0.09653679653679653 0.140625 0.15324675324675324 diff --git a/VOC/labels/train/03590.txt b/VOC/labels/train/03590.txt new file mode 100644 index 0000000..2c71752 --- /dev/null +++ b/VOC/labels/train/03590.txt @@ -0,0 +1 @@ +1 0.5 0.1768929503916449 0.306640625 0.2297650130548303 diff --git a/VOC/labels/train/03600.txt b/VOC/labels/train/03600.txt new file mode 100644 index 0000000..cc4829e --- /dev/null +++ b/VOC/labels/train/03600.txt @@ -0,0 +1 @@ +1 0.52392578125 0.3766990291262136 0.3388671875 0.26925566343042073 diff --git a/VOC/labels/train/03610.txt b/VOC/labels/train/03610.txt new file mode 100644 index 0000000..2821f3d --- /dev/null +++ b/VOC/labels/train/03610.txt @@ -0,0 +1 @@ +1 0.4859375 0.4927083333333333 0.203125 0.30625 diff --git a/VOC/labels/train/03620.txt b/VOC/labels/train/03620.txt new file mode 100644 index 0000000..09d2604 --- /dev/null +++ b/VOC/labels/train/03620.txt @@ -0,0 +1 @@ +1 0.5087890625 0.3486029889538661 0.42578125 0.3697205977907732 diff --git a/VOC/labels/train/03640.txt b/VOC/labels/train/03640.txt new file mode 100644 index 0000000..6453ff7 --- /dev/null +++ b/VOC/labels/train/03640.txt @@ -0,0 +1 @@ +1 0.528 0.232 0.25066666666666665 0.256 diff --git a/VOC/labels/train/03650.txt b/VOC/labels/train/03650.txt new file mode 100644 index 0000000..710655e --- /dev/null +++ b/VOC/labels/train/03650.txt @@ -0,0 +1 @@ +1 0.3598958333333333 0.26203703703703707 0.20520833333333333 0.46111111111111114 diff --git a/VOC/labels/train/03660.txt b/VOC/labels/train/03660.txt new file mode 100644 index 0000000..8b14615 --- /dev/null +++ b/VOC/labels/train/03660.txt @@ -0,0 +1 @@ +1 0.5234375 0.43124999999999997 0.209375 0.2916666666666667 diff --git a/VOC/labels/train/03670.txt b/VOC/labels/train/03670.txt new file mode 100644 index 0000000..3a32d2b --- /dev/null +++ b/VOC/labels/train/03670.txt @@ -0,0 +1 @@ +1 0.5632530120481928 0.34600000000000003 0.3132530120481928 0.268 diff --git a/VOC/labels/train/03690.txt b/VOC/labels/train/03690.txt new file mode 100644 index 0000000..0084308 --- /dev/null +++ b/VOC/labels/train/03690.txt @@ -0,0 +1 @@ +1 0.467 0.44744744744744747 0.09 0.18018018018018017 diff --git a/VOC/labels/train/03700.txt b/VOC/labels/train/03700.txt new file mode 100644 index 0000000..6428d36 --- /dev/null +++ b/VOC/labels/train/03700.txt @@ -0,0 +1 @@ +1 0.55234375 0.3333333333333333 0.19843750000000002 0.2833333333333333 diff --git a/VOC/labels/train/03710.txt b/VOC/labels/train/03710.txt new file mode 100644 index 0000000..0169cfa --- /dev/null +++ b/VOC/labels/train/03710.txt @@ -0,0 +1 @@ +1 0.4755859375 0.2998046875 0.568359375 0.474609375 diff --git a/VOC/labels/train/03720.txt b/VOC/labels/train/03720.txt new file mode 100644 index 0000000..22a36ed --- /dev/null +++ b/VOC/labels/train/03720.txt @@ -0,0 +1 @@ +1 0.49755859375 0.2763671875 0.3095703125 0.40625 diff --git a/VOC/labels/train/03730.txt b/VOC/labels/train/03730.txt new file mode 100644 index 0000000..7feef0f --- /dev/null +++ b/VOC/labels/train/03730.txt @@ -0,0 +1 @@ +1 0.58984375 0.4083333333333333 0.1609375 0.23333333333333334 diff --git a/VOC/labels/train/03740.txt b/VOC/labels/train/03740.txt new file mode 100644 index 0000000..cc23825 --- /dev/null +++ b/VOC/labels/train/03740.txt @@ -0,0 +1,2 @@ +1 0.521 0.5666666666666667 0.10200000000000001 0.152 +1 0.6960000000000001 0.5439999999999999 0.116 0.17066666666666666 diff --git a/VOC/labels/train/03750.txt b/VOC/labels/train/03750.txt new file mode 100644 index 0000000..25f26f5 --- /dev/null +++ b/VOC/labels/train/03750.txt @@ -0,0 +1 @@ +1 0.53828125 0.30833333333333335 0.16718750000000002 0.2875 diff --git a/VOC/labels/train/03760.txt b/VOC/labels/train/03760.txt new file mode 100644 index 0000000..935c51b --- /dev/null +++ b/VOC/labels/train/03760.txt @@ -0,0 +1 @@ +1 0.48095703125 0.3950097213220998 0.6064453125 0.5398574206092028 diff --git a/VOC/labels/train/03770.txt b/VOC/labels/train/03770.txt new file mode 100644 index 0000000..0152227 --- /dev/null +++ b/VOC/labels/train/03770.txt @@ -0,0 +1 @@ +1 0.5554687500000001 0.42604166666666665 0.2328125 0.32708333333333334 diff --git a/VOC/labels/train/03780.txt b/VOC/labels/train/03780.txt new file mode 100644 index 0000000..e6f2ad9 --- /dev/null +++ b/VOC/labels/train/03780.txt @@ -0,0 +1 @@ +1 0.5593750000000001 0.484375 0.21250000000000002 0.33958333333333335 diff --git a/VOC/labels/train/03790.txt b/VOC/labels/train/03790.txt new file mode 100644 index 0000000..e8dd539 --- /dev/null +++ b/VOC/labels/train/03790.txt @@ -0,0 +1 @@ +1 0.5126953125 0.1416015625 0.177734375 0.23046875 diff --git a/VOC/labels/train/03800.txt b/VOC/labels/train/03800.txt new file mode 100644 index 0000000..63a71bd --- /dev/null +++ b/VOC/labels/train/03800.txt @@ -0,0 +1 @@ +1 0.5419921875 0.17950391644908617 0.34765625 0.24673629242819844 diff --git a/VOC/labels/train/03810.txt b/VOC/labels/train/03810.txt new file mode 100644 index 0000000..4a0fcbf --- /dev/null +++ b/VOC/labels/train/03810.txt @@ -0,0 +1 @@ +1 0.50703125 0.40625 0.21406250000000002 0.30833333333333335 diff --git a/VOC/labels/train/03820.txt b/VOC/labels/train/03820.txt new file mode 100644 index 0000000..5fb0d15 --- /dev/null +++ b/VOC/labels/train/03820.txt @@ -0,0 +1 @@ +1 0.47900390625 0.32930809399477806 0.5693359375 0.5306788511749347 diff --git a/VOC/labels/train/03830.txt b/VOC/labels/train/03830.txt new file mode 100644 index 0000000..8291549 --- /dev/null +++ b/VOC/labels/train/03830.txt @@ -0,0 +1 @@ +1 0.4326171875 0.2803819444444444 0.201171875 0.43229166666666663 diff --git a/VOC/labels/train/03840.txt b/VOC/labels/train/03840.txt new file mode 100644 index 0000000..126daaa --- /dev/null +++ b/VOC/labels/train/03840.txt @@ -0,0 +1,2 @@ +1 0.15625 0.4773060029282577 0.1953125 0.17715959004392387 +1 0.75439453125 0.1965592972181552 0.2255859375 0.19692532942898977 diff --git a/VOC/labels/train/03850.txt b/VOC/labels/train/03850.txt new file mode 100644 index 0000000..fe68da7 --- /dev/null +++ b/VOC/labels/train/03850.txt @@ -0,0 +1 @@ +1 0.60791015625 0.244921875 0.4423828125 0.42890625000000004 diff --git a/VOC/labels/train/03860.txt b/VOC/labels/train/03860.txt new file mode 100644 index 0000000..41ad7c7 --- /dev/null +++ b/VOC/labels/train/03860.txt @@ -0,0 +1 @@ +1 0.552734375 0.3142978003384095 0.365234375 0.4069373942470389 diff --git a/VOC/labels/train/03870.txt b/VOC/labels/train/03870.txt new file mode 100644 index 0000000..2446ba0 --- /dev/null +++ b/VOC/labels/train/03870.txt @@ -0,0 +1 @@ +1 0.6123046875 0.6698389458272328 0.55078125 0.5358711566617862 diff --git a/VOC/labels/train/03880.txt b/VOC/labels/train/03880.txt new file mode 100644 index 0000000..8a9e36a --- /dev/null +++ b/VOC/labels/train/03880.txt @@ -0,0 +1 @@ +1 0.52001953125 0.38810900082576383 0.5908203125 0.6127167630057803 diff --git a/VOC/labels/train/03890.txt b/VOC/labels/train/03890.txt new file mode 100644 index 0000000..71ddf9e --- /dev/null +++ b/VOC/labels/train/03890.txt @@ -0,0 +1 @@ +1 0.40576171875 0.40441176470588236 0.2392578125 0.41470588235294115 diff --git a/VOC/labels/train/03900.txt b/VOC/labels/train/03900.txt new file mode 100644 index 0000000..6154eff --- /dev/null +++ b/VOC/labels/train/03900.txt @@ -0,0 +1,4 @@ +1 0.24365234375 0.17797783933518005 0.1435546875 0.2590027700831025 +1 0.724609375 0.29293628808864264 0.130859375 0.203601108033241 +1 0.45751953125 0.3171745152354571 0.0986328125 0.19390581717451524 +1 0.3388671875 0.30678670360110805 0.0703125 0.1703601108033241 diff --git a/VOC/labels/train/03910.txt b/VOC/labels/train/03910.txt new file mode 100644 index 0000000..c7a4408 --- /dev/null +++ b/VOC/labels/train/03910.txt @@ -0,0 +1 @@ +1 0.5906250000000001 0.39479166666666665 0.1875 0.33125 diff --git a/VOC/labels/train/03920.txt b/VOC/labels/train/03920.txt new file mode 100644 index 0000000..ae44643 --- /dev/null +++ b/VOC/labels/train/03920.txt @@ -0,0 +1 @@ +1 0.5203125000000001 0.44166666666666665 0.18125000000000002 0.2875 diff --git a/VOC/labels/train/03930.txt b/VOC/labels/train/03930.txt new file mode 100644 index 0000000..56cffb2 --- /dev/null +++ b/VOC/labels/train/03930.txt @@ -0,0 +1 @@ +1 0.515625 0.40625 0.209375 0.2791666666666667 diff --git a/VOC/labels/train/03940.txt b/VOC/labels/train/03940.txt new file mode 100644 index 0000000..f43667e --- /dev/null +++ b/VOC/labels/train/03940.txt @@ -0,0 +1 @@ +1 0.4609375 0.20795306388526727 0.357421875 0.3350717079530639 diff --git a/VOC/labels/train/03950.txt b/VOC/labels/train/03950.txt new file mode 100644 index 0000000..05f3bfa --- /dev/null +++ b/VOC/labels/train/03950.txt @@ -0,0 +1,4 @@ +1 0.14990234375 0.4158125915080527 0.1083984375 0.21669106881405564 +1 0.36669921875 0.42752562225475843 0.1162109375 0.18740849194729137 +1 0.60009765625 0.32723279648609077 0.1220703125 0.22986822840409957 +1 0.87255859375 0.3440702781844802 0.1298828125 0.2664714494875549 diff --git a/VOC/labels/train/03960.txt b/VOC/labels/train/03960.txt new file mode 100644 index 0000000..2b25916 --- /dev/null +++ b/VOC/labels/train/03960.txt @@ -0,0 +1,4 @@ +1 0.23974609375 0.5833333333333334 0.1318359375 0.2535014005602241 +1 0.37060546875 0.5812324929971989 0.1318359375 0.25210084033613445 +1 0.52734375 0.6050420168067226 0.15234375 0.2857142857142857 +1 0.67529296875 0.43137254901960786 0.1376953125 0.25210084033613445 diff --git a/VOC/labels/train/03980.txt b/VOC/labels/train/03980.txt new file mode 100644 index 0000000..20536cb --- /dev/null +++ b/VOC/labels/train/03980.txt @@ -0,0 +1 @@ +1 0.58828125 0.36041666666666666 0.1921875 0.30833333333333335 diff --git a/VOC/labels/train/03990.txt b/VOC/labels/train/03990.txt new file mode 100644 index 0000000..a592e9e --- /dev/null +++ b/VOC/labels/train/03990.txt @@ -0,0 +1 @@ +1 0.56875 0.3854166666666667 0.15000000000000002 0.25 diff --git a/VOC/labels/train/04000.txt b/VOC/labels/train/04000.txt new file mode 100644 index 0000000..aa5eb4e --- /dev/null +++ b/VOC/labels/train/04000.txt @@ -0,0 +1,2 @@ +1 0.30224609375 0.2601010101010101 0.3369140625 0.33261183261183264 +1 0.76708984375 0.2976190476190476 0.3583984375 0.3297258297258297 diff --git a/VOC/labels/train/04010.txt b/VOC/labels/train/04010.txt new file mode 100644 index 0000000..2462ef2 --- /dev/null +++ b/VOC/labels/train/04010.txt @@ -0,0 +1 @@ +1 0.55078125 0.34479166666666666 0.1640625 0.27708333333333335 diff --git a/VOC/labels/train/04020.txt b/VOC/labels/train/04020.txt new file mode 100644 index 0000000..5cb9a06 --- /dev/null +++ b/VOC/labels/train/04020.txt @@ -0,0 +1,4 @@ +1 0.34375 0.43135345666991237 0.138671875 0.18500486854917236 +1 0.56103515625 0.4917234664070107 0.1552734375 0.2103213242453749 +1 0.83447265625 0.49318403115871473 0.1630859375 0.19376825705939632 +1 0.4638671875 0.1679649464459591 0.1484375 0.17429406037000975 diff --git a/VOC/labels/train/04030.txt b/VOC/labels/train/04030.txt new file mode 100644 index 0000000..03723ff --- /dev/null +++ b/VOC/labels/train/04030.txt @@ -0,0 +1,2 @@ +1 0.34 0.3413173652694611 0.192 0.4191616766467066 +1 0.556 0.344311377245509 0.20400000000000001 0.39520958083832336 diff --git a/VOC/labels/train/04040.txt b/VOC/labels/train/04040.txt new file mode 100644 index 0000000..2525c36 --- /dev/null +++ b/VOC/labels/train/04040.txt @@ -0,0 +1 @@ +1 0.5476562500000001 0.4322916666666667 0.1765625 0.26875 diff --git a/VOC/labels/train/04050.txt b/VOC/labels/train/04050.txt new file mode 100644 index 0000000..7aeda55 --- /dev/null +++ b/VOC/labels/train/04050.txt @@ -0,0 +1 @@ +1 0.54296875 0.4166666666666667 0.21406250000000002 0.3458333333333333 diff --git a/VOC/labels/train/04060.txt b/VOC/labels/train/04060.txt new file mode 100644 index 0000000..8c3457e --- /dev/null +++ b/VOC/labels/train/04060.txt @@ -0,0 +1 @@ +1 0.31982421875 0.38643737832576247 0.6337890625 0.5885788449059052 diff --git a/VOC/labels/train/04070.txt b/VOC/labels/train/04070.txt new file mode 100644 index 0000000..b112600 --- /dev/null +++ b/VOC/labels/train/04070.txt @@ -0,0 +1,2 @@ +1 0.28125 0.189453125 0.1796875 0.35026041666666663 +1 0.71728515625 0.306640625 0.1767578125 0.29296875 diff --git a/VOC/labels/train/04080.txt b/VOC/labels/train/04080.txt new file mode 100644 index 0000000..ea2d252 --- /dev/null +++ b/VOC/labels/train/04080.txt @@ -0,0 +1 @@ +1 0.478515625 0.31510791366906477 0.419921875 0.460431654676259 diff --git a/VOC/labels/train/04090.txt b/VOC/labels/train/04090.txt new file mode 100644 index 0000000..56cb8d1 --- /dev/null +++ b/VOC/labels/train/04090.txt @@ -0,0 +1 @@ +1 0.40087890625 0.32159017453135097 0.4326171875 0.3665158371040724 diff --git a/VOC/labels/train/04100.txt b/VOC/labels/train/04100.txt new file mode 100644 index 0000000..2102808 --- /dev/null +++ b/VOC/labels/train/04100.txt @@ -0,0 +1 @@ +1 0.42529296875 0.31773879142300193 0.5224609375 0.4756335282651072 diff --git a/VOC/labels/train/04110.txt b/VOC/labels/train/04110.txt new file mode 100644 index 0000000..7b397d1 --- /dev/null +++ b/VOC/labels/train/04110.txt @@ -0,0 +1 @@ +1 0.5078125 0.1801831262262917 0.306640625 0.27795945062132116 diff --git a/VOC/labels/train/04120.txt b/VOC/labels/train/04120.txt new file mode 100644 index 0000000..4417be3 --- /dev/null +++ b/VOC/labels/train/04120.txt @@ -0,0 +1 @@ +1 0.48984375 0.3208333333333333 0.2234375 0.3458333333333333 diff --git a/VOC/labels/train/04130.txt b/VOC/labels/train/04130.txt new file mode 100644 index 0000000..1e185e4 --- /dev/null +++ b/VOC/labels/train/04130.txt @@ -0,0 +1 @@ +1 0.47998046875 0.322692793931732 0.7392578125 0.5619469026548674 diff --git a/VOC/labels/train/04140.txt b/VOC/labels/train/04140.txt new file mode 100644 index 0000000..637fe4c --- /dev/null +++ b/VOC/labels/train/04140.txt @@ -0,0 +1 @@ +1 0.4404296875 0.4139834406623735 0.478515625 0.702851885924563 diff --git a/VOC/labels/train/04150.txt b/VOC/labels/train/04150.txt new file mode 100644 index 0000000..1bb30a4 --- /dev/null +++ b/VOC/labels/train/04150.txt @@ -0,0 +1 @@ +1 0.5104166666666666 0.4203703703703704 0.15833333333333333 0.3703703703703704 diff --git a/VOC/labels/train/04160.txt b/VOC/labels/train/04160.txt new file mode 100644 index 0000000..44c0998 --- /dev/null +++ b/VOC/labels/train/04160.txt @@ -0,0 +1,3 @@ +1 0.133 0.39066666666666666 0.178 0.25866666666666666 +1 0.425 0.38666666666666666 0.17 0.2773333333333333 +1 0.893 0.3973333333333333 0.214 0.30933333333333335 diff --git a/VOC/labels/train/04170.txt b/VOC/labels/train/04170.txt new file mode 100644 index 0000000..3ced99b --- /dev/null +++ b/VOC/labels/train/04170.txt @@ -0,0 +1 @@ +1 0.4404296875 0.36961869618696186 0.384765625 0.5842558425584256 diff --git a/VOC/labels/train/04180.txt b/VOC/labels/train/04180.txt new file mode 100644 index 0000000..6ff76b9 --- /dev/null +++ b/VOC/labels/train/04180.txt @@ -0,0 +1 @@ +1 0.50537109375 0.2179987004548408 0.3447265625 0.25795971410006496 diff --git a/VOC/labels/train/04190.txt b/VOC/labels/train/04190.txt new file mode 100644 index 0000000..2734394 --- /dev/null +++ b/VOC/labels/train/04190.txt @@ -0,0 +1,2 @@ +1 0.3067708333333333 0.32592592592592595 0.159375 0.33333333333333337 +1 0.8791666666666667 0.2675925925925926 0.24166666666666667 0.4537037037037037 diff --git a/VOC/labels/train/04200.txt b/VOC/labels/train/04200.txt new file mode 100644 index 0000000..b01df93 --- /dev/null +++ b/VOC/labels/train/04200.txt @@ -0,0 +1 @@ +1 0.50927734375 0.2456597222222222 0.1337890625 0.2864583333333333 diff --git a/VOC/labels/train/04210.txt b/VOC/labels/train/04210.txt new file mode 100644 index 0000000..14fe18d --- /dev/null +++ b/VOC/labels/train/04210.txt @@ -0,0 +1 @@ +1 0.5380859375 0.2641374373657838 0.4765625 0.3779527559055118 diff --git a/VOC/labels/train/04220.txt b/VOC/labels/train/04220.txt new file mode 100644 index 0000000..467d9ae --- /dev/null +++ b/VOC/labels/train/04220.txt @@ -0,0 +1 @@ +1 0.47216796875 0.14713541666666666 0.3037109375 0.24739583333333331 diff --git a/VOC/labels/train/04230.txt b/VOC/labels/train/04230.txt new file mode 100644 index 0000000..72c76d0 --- /dev/null +++ b/VOC/labels/train/04230.txt @@ -0,0 +1 @@ +1 0.52265625 0.31875 0.2078125 0.32916666666666666 diff --git a/VOC/labels/train/04240.txt b/VOC/labels/train/04240.txt new file mode 100644 index 0000000..373561d --- /dev/null +++ b/VOC/labels/train/04240.txt @@ -0,0 +1 @@ +1 0.42529296875 0.28081123244929795 0.2099609375 0.39001560062402496 diff --git a/VOC/labels/train/04250.txt b/VOC/labels/train/04250.txt new file mode 100644 index 0000000..b94ade0 --- /dev/null +++ b/VOC/labels/train/04250.txt @@ -0,0 +1,3 @@ +1 0.23600000000000002 0.41466666666666663 0.156 0.21066666666666667 +1 0.424 0.36266666666666664 0.084 0.12266666666666666 +1 0.8320000000000001 0.308 0.124 0.216 diff --git a/VOC/labels/train/04260.txt b/VOC/labels/train/04260.txt new file mode 100644 index 0000000..8fa6185 --- /dev/null +++ b/VOC/labels/train/04260.txt @@ -0,0 +1,5 @@ +1 0.1337890625 0.15427769985974754 0.091796875 0.1514726507713885 +1 0.3251953125 0.19074333800841514 0.07421875 0.14305750350631136 +1 0.50927734375 0.15357643758765777 0.0888671875 0.15287517531556802 +1 0.71533203125 0.16690042075736325 0.0908203125 0.1514726507713885 +1 0.890625 0.15007012622720897 0.099609375 0.16269284712482468 diff --git a/VOC/labels/train/04270.txt b/VOC/labels/train/04270.txt new file mode 100644 index 0000000..d2296ca --- /dev/null +++ b/VOC/labels/train/04270.txt @@ -0,0 +1 @@ +1 0.478515625 0.17378497790868924 0.259765625 0.2312223858615611 diff --git a/VOC/labels/train/04280.txt b/VOC/labels/train/04280.txt new file mode 100644 index 0000000..12fca71 --- /dev/null +++ b/VOC/labels/train/04280.txt @@ -0,0 +1,2 @@ +1 0.50244140625 0.26863253402462733 0.3056640625 0.17692806221646143 +1 0.84130859375 0.15327284510693454 0.3173828125 0.23007128969539858 diff --git a/VOC/labels/train/04290.txt b/VOC/labels/train/04290.txt new file mode 100644 index 0000000..4bff323 --- /dev/null +++ b/VOC/labels/train/04290.txt @@ -0,0 +1 @@ +1 0.3564453125 0.3831380208333333 0.28515625 0.21419270833333331 diff --git a/VOC/labels/train/04300.txt b/VOC/labels/train/04300.txt new file mode 100644 index 0000000..b0a9a38 --- /dev/null +++ b/VOC/labels/train/04300.txt @@ -0,0 +1 @@ +1 0.50439453125 0.25875486381322954 0.2822265625 0.23605706874189364 diff --git a/VOC/labels/train/04310.txt b/VOC/labels/train/04310.txt new file mode 100644 index 0000000..e37aec5 --- /dev/null +++ b/VOC/labels/train/04310.txt @@ -0,0 +1,3 @@ +1 0.24755859375 0.2725381414701803 0.1904296875 0.37586685159500693 +1 0.60791015625 0.25173370319001387 0.1787109375 0.31484049930651875 +1 0.85009765625 0.4056865464632455 0.1376953125 0.34535367545076284 diff --git a/VOC/labels/train/04320.txt b/VOC/labels/train/04320.txt new file mode 100644 index 0000000..a5fc30e --- /dev/null +++ b/VOC/labels/train/04320.txt @@ -0,0 +1 @@ +1 0.276 0.18133333333333332 0.088 0.128 diff --git a/VOC/labels/train/04330.txt b/VOC/labels/train/04330.txt new file mode 100644 index 0000000..c7f0083 --- /dev/null +++ b/VOC/labels/train/04330.txt @@ -0,0 +1 @@ +1 0.45654296875 0.29675324675324677 0.3779296875 0.3064935064935065 diff --git a/VOC/labels/train/04340.txt b/VOC/labels/train/04340.txt new file mode 100644 index 0000000..4331a4c --- /dev/null +++ b/VOC/labels/train/04340.txt @@ -0,0 +1 @@ +1 0.46875 0.3779296875 0.61328125 0.5891927083333333 diff --git a/VOC/labels/train/04350.txt b/VOC/labels/train/04350.txt new file mode 100644 index 0000000..4987d47 --- /dev/null +++ b/VOC/labels/train/04350.txt @@ -0,0 +1 @@ +1 0.48984375 0.45 0.2015625 0.3208333333333333 diff --git a/VOC/labels/train/04360.txt b/VOC/labels/train/04360.txt new file mode 100644 index 0000000..610becc --- /dev/null +++ b/VOC/labels/train/04360.txt @@ -0,0 +1 @@ +1 0.5634765625 0.3133986928104575 0.6015625 0.5117647058823529 diff --git a/VOC/labels/train/04370.txt b/VOC/labels/train/04370.txt new file mode 100644 index 0000000..a8a7a35 --- /dev/null +++ b/VOC/labels/train/04370.txt @@ -0,0 +1 @@ +1 0.481 0.53003003003003 0.154 0.35735735735735735 diff --git a/VOC/labels/train/04380.txt b/VOC/labels/train/04380.txt new file mode 100644 index 0000000..7341e99 --- /dev/null +++ b/VOC/labels/train/04380.txt @@ -0,0 +1 @@ +1 0.47509765625 0.10944363103953147 0.2138671875 0.17057101024890192 diff --git a/VOC/labels/train/04390.txt b/VOC/labels/train/04390.txt new file mode 100644 index 0000000..0434250 --- /dev/null +++ b/VOC/labels/train/04390.txt @@ -0,0 +1,5 @@ +1 0.08349609375 0.42143906020558003 0.0654296875 0.14684287812041116 +1 0.279296875 0.4052863436123348 0.0703125 0.13215859030837004 +1 0.4921875 0.42584434654919234 0.076171875 0.1527165932452276 +1 0.693359375 0.4295154185022026 0.0859375 0.17180616740088106 +1 0.859375 0.4045521292217327 0.08203125 0.19236417033773862 diff --git a/VOC/labels/train/04400.txt b/VOC/labels/train/04400.txt new file mode 100644 index 0000000..d27079d --- /dev/null +++ b/VOC/labels/train/04400.txt @@ -0,0 +1 @@ +1 0.48876953125 0.24552429667519182 0.3154296875 0.3546462063086104 diff --git a/VOC/labels/train/04410.txt b/VOC/labels/train/04410.txt new file mode 100644 index 0000000..24b8048 --- /dev/null +++ b/VOC/labels/train/04410.txt @@ -0,0 +1 @@ +1 0.4794921875 0.28729641693811075 0.380859375 0.3622149837133551 diff --git a/VOC/labels/train/04420.txt b/VOC/labels/train/04420.txt new file mode 100644 index 0000000..ab466e2 --- /dev/null +++ b/VOC/labels/train/04420.txt @@ -0,0 +1 @@ +1 0.4453125 0.2372535690006798 0.361328125 0.30591434398368456 diff --git a/VOC/labels/train/04430.txt b/VOC/labels/train/04430.txt new file mode 100644 index 0000000..5e55e1e --- /dev/null +++ b/VOC/labels/train/04430.txt @@ -0,0 +1 @@ +1 0.59375 0.37083333333333335 0.19062500000000002 0.2708333333333333 diff --git a/VOC/labels/train/04440.txt b/VOC/labels/train/04440.txt new file mode 100644 index 0000000..5282494 --- /dev/null +++ b/VOC/labels/train/04440.txt @@ -0,0 +1 @@ +1 0.5400390625 0.4224011713030747 0.2578125 0.3850658857979502 diff --git a/VOC/labels/train/04450.txt b/VOC/labels/train/04450.txt new file mode 100644 index 0000000..ceb9bd8 --- /dev/null +++ b/VOC/labels/train/04450.txt @@ -0,0 +1 @@ +1 0.4345703125 0.2508122157244964 0.419921875 0.33398310591293046 diff --git a/VOC/labels/train/04460.txt b/VOC/labels/train/04460.txt new file mode 100644 index 0000000..1f1d6c4 --- /dev/null +++ b/VOC/labels/train/04460.txt @@ -0,0 +1,3 @@ +1 0.2607421875 0.25302114803625375 0.154296875 0.26435045317220546 +1 0.54736328125 0.23036253776435045 0.1572265625 0.2794561933534743 +1 0.7783203125 0.2794561933534743 0.15234375 0.26586102719033233 diff --git a/VOC/labels/train/04470.txt b/VOC/labels/train/04470.txt new file mode 100644 index 0000000..7d6294d --- /dev/null +++ b/VOC/labels/train/04470.txt @@ -0,0 +1 @@ +1 0.5361328125 0.2883542538354254 0.484375 0.40655509065550904 diff --git a/VOC/labels/train/04480.txt b/VOC/labels/train/04480.txt new file mode 100644 index 0000000..4a7923d --- /dev/null +++ b/VOC/labels/train/04480.txt @@ -0,0 +1 @@ +1 0.532 0.22799999999999998 0.148 0.248 diff --git a/VOC/labels/train/04490.txt b/VOC/labels/train/04490.txt new file mode 100644 index 0000000..d93f44f --- /dev/null +++ b/VOC/labels/train/04490.txt @@ -0,0 +1 @@ +1 0.53466796875 0.42447916666666663 0.3173828125 0.5494791666666666 diff --git a/VOC/labels/train/04500.txt b/VOC/labels/train/04500.txt new file mode 100644 index 0000000..f4084bd --- /dev/null +++ b/VOC/labels/train/04500.txt @@ -0,0 +1 @@ +1 0.5453125 0.43124999999999997 0.215625 0.29583333333333334 diff --git a/VOC/labels/train/04510.txt b/VOC/labels/train/04510.txt new file mode 100644 index 0000000..3c0e739 --- /dev/null +++ b/VOC/labels/train/04510.txt @@ -0,0 +1 @@ +1 0.43115234375 0.37514188422247446 0.3701171875 0.4846765039727582 diff --git a/VOC/labels/train/04520.txt b/VOC/labels/train/04520.txt new file mode 100644 index 0000000..bcca340 --- /dev/null +++ b/VOC/labels/train/04520.txt @@ -0,0 +1 @@ +1 0.5484375 0.38229166666666664 0.2 0.29791666666666666 diff --git a/VOC/labels/train/04530.txt b/VOC/labels/train/04530.txt new file mode 100644 index 0000000..73b64a5 --- /dev/null +++ b/VOC/labels/train/04530.txt @@ -0,0 +1,2 @@ +1 0.2996987951807229 0.395 0.32228915662650603 0.28600000000000003 +1 0.6912650602409639 0.167 0.3283132530120482 0.298 diff --git a/VOC/labels/train/04540.txt b/VOC/labels/train/04540.txt new file mode 100644 index 0000000..cdb140b --- /dev/null +++ b/VOC/labels/train/04540.txt @@ -0,0 +1 @@ +1 0.52734375 0.27719665271966526 0.41015625 0.402370990237099 diff --git a/VOC/labels/train/04550.txt b/VOC/labels/train/04550.txt new file mode 100644 index 0000000..a72ca28 --- /dev/null +++ b/VOC/labels/train/04550.txt @@ -0,0 +1,2 @@ +1 0.322265625 0.2847222222222222 0.13671875 0.2534722222222222 +1 0.83837890625 0.34809027777777773 0.1162109375 0.2065972222222222 diff --git a/VOC/labels/train/04560.txt b/VOC/labels/train/04560.txt new file mode 100644 index 0000000..f64eb94 --- /dev/null +++ b/VOC/labels/train/04560.txt @@ -0,0 +1 @@ +1 0.45703125 0.18565683646112602 0.36328125 0.2828418230563003 diff --git a/VOC/labels/train/04580.txt b/VOC/labels/train/04580.txt new file mode 100644 index 0000000..05c9af7 --- /dev/null +++ b/VOC/labels/train/04580.txt @@ -0,0 +1 @@ +1 0.48583984375 0.43769470404984423 0.3466796875 0.778816199376947 diff --git a/VOC/labels/train/04590.txt b/VOC/labels/train/04590.txt new file mode 100644 index 0000000..4811e0b --- /dev/null +++ b/VOC/labels/train/04590.txt @@ -0,0 +1 @@ +1 0.44287109375 0.21175311884438605 0.4052734375 0.39592908732764276 diff --git a/VOC/labels/train/04600.txt b/VOC/labels/train/04600.txt new file mode 100644 index 0000000..df1ae7e --- /dev/null +++ b/VOC/labels/train/04600.txt @@ -0,0 +1,2 @@ +1 0.18310546875 0.3340643274853801 0.1044921875 0.1739766081871345 +1 0.724609375 0.3384502923976608 0.12109375 0.20906432748538012 diff --git a/VOC/labels/train/04610.txt b/VOC/labels/train/04610.txt new file mode 100644 index 0000000..9431f6d --- /dev/null +++ b/VOC/labels/train/04610.txt @@ -0,0 +1 @@ +1 0.52578125 0.3875 0.22031250000000002 0.3458333333333333 diff --git a/VOC/labels/train/04620.txt b/VOC/labels/train/04620.txt new file mode 100644 index 0000000..fbd601d --- /dev/null +++ b/VOC/labels/train/04620.txt @@ -0,0 +1,2 @@ +1 0.24166666666666667 0.3814814814814815 0.175 0.5037037037037038 +1 0.553125 0.3592592592592593 0.22708333333333333 0.45555555555555555 diff --git a/VOC/labels/train/04630.txt b/VOC/labels/train/04630.txt new file mode 100644 index 0000000..0eccaa7 --- /dev/null +++ b/VOC/labels/train/04630.txt @@ -0,0 +1,2 @@ +1 0.26953125 0.20238095238095238 0.17578125 0.2927170868347339 +1 0.7841796875 0.22408963585434175 0.171875 0.2913165266106443 diff --git a/VOC/labels/train/04640.txt b/VOC/labels/train/04640.txt new file mode 100644 index 0000000..b494000 --- /dev/null +++ b/VOC/labels/train/04640.txt @@ -0,0 +1,2 @@ +1 0.19140625 0.3125 0.376953125 0.4495614035087719 +1 0.5673828125 0.3340643274853801 0.375 0.41666666666666663 diff --git a/VOC/labels/train/04650.txt b/VOC/labels/train/04650.txt new file mode 100644 index 0000000..05ebbb6 --- /dev/null +++ b/VOC/labels/train/04650.txt @@ -0,0 +1 @@ +1 0.58056640625 0.2402088772845953 0.5048828125 0.3968668407310705 diff --git a/VOC/labels/train/04660.txt b/VOC/labels/train/04660.txt new file mode 100644 index 0000000..e23cfca --- /dev/null +++ b/VOC/labels/train/04660.txt @@ -0,0 +1,2 @@ +1 0.429 0.35333333333333333 0.15 0.22133333333333333 +1 0.638 0.36533333333333334 0.156 0.2613333333333333 diff --git a/VOC/labels/train/04670.txt b/VOC/labels/train/04670.txt new file mode 100644 index 0000000..4ec056e --- /dev/null +++ b/VOC/labels/train/04670.txt @@ -0,0 +1 @@ +1 0.36266666666666664 0.40900000000000003 0.27199999999999996 0.25 diff --git a/VOC/labels/train/04690.txt b/VOC/labels/train/04690.txt new file mode 100644 index 0000000..418d400 --- /dev/null +++ b/VOC/labels/train/04690.txt @@ -0,0 +1 @@ +1 0.47900000000000004 0.312 0.138 0.224 diff --git a/VOC/labels/train/04720.txt b/VOC/labels/train/04720.txt new file mode 100644 index 0000000..4a00ab0 --- /dev/null +++ b/VOC/labels/train/04720.txt @@ -0,0 +1 @@ +1 0.50439453125 0.292 0.5771484375 0.448 diff --git a/VOC/labels/train/04730.txt b/VOC/labels/train/04730.txt new file mode 100644 index 0000000..afb991c --- /dev/null +++ b/VOC/labels/train/04730.txt @@ -0,0 +1 @@ +1 0.58642578125 0.19057377049180327 0.2841796875 0.23946135831381732 diff --git a/VOC/labels/train/04740.txt b/VOC/labels/train/04740.txt new file mode 100644 index 0000000..53a0252 --- /dev/null +++ b/VOC/labels/train/04740.txt @@ -0,0 +1,2 @@ +1 0.126 0.42666666666666664 0.18 0.304 +1 0.712 0.3733333333333333 0.20800000000000002 0.3466666666666667 diff --git a/VOC/labels/train/04750.txt b/VOC/labels/train/04750.txt new file mode 100644 index 0000000..b5f8f53 --- /dev/null +++ b/VOC/labels/train/04750.txt @@ -0,0 +1 @@ +1 0.4890625 0.4302083333333333 0.24375000000000002 0.3854166666666667 diff --git a/VOC/labels/train/04760.txt b/VOC/labels/train/04760.txt new file mode 100644 index 0000000..291de94 --- /dev/null +++ b/VOC/labels/train/04760.txt @@ -0,0 +1 @@ +1 0.54609375 0.4145833333333333 0.18906250000000002 0.275 diff --git a/VOC/labels/train/04770.txt b/VOC/labels/train/04770.txt new file mode 100644 index 0000000..cd8c47a --- /dev/null +++ b/VOC/labels/train/04770.txt @@ -0,0 +1 @@ +1 0.38134765625 0.28255675029868577 0.2216796875 0.3548387096774193 diff --git a/VOC/labels/train/04780.txt b/VOC/labels/train/04780.txt new file mode 100644 index 0000000..0a27611 --- /dev/null +++ b/VOC/labels/train/04780.txt @@ -0,0 +1,2 @@ +1 0.65673828125 0.3487951807228916 0.2705078125 0.42530120481927713 +1 0.22119140625 0.27831325301204823 0.2373046875 0.3662650602409639 diff --git a/VOC/labels/train/04790.txt b/VOC/labels/train/04790.txt new file mode 100644 index 0000000..81689c5 --- /dev/null +++ b/VOC/labels/train/04790.txt @@ -0,0 +1 @@ +1 0.4951171875 0.3305439330543933 0.60546875 0.5578800557880056 diff --git a/VOC/labels/train/04800.txt b/VOC/labels/train/04800.txt new file mode 100644 index 0000000..5398c82 --- /dev/null +++ b/VOC/labels/train/04800.txt @@ -0,0 +1 @@ +1 0.53828125 0.48125 0.2859375 0.4125 diff --git a/VOC/labels/train/04810.txt b/VOC/labels/train/04810.txt new file mode 100644 index 0000000..6fff7f1 --- /dev/null +++ b/VOC/labels/train/04810.txt @@ -0,0 +1 @@ +1 0.48681640625 0.470203488372093 0.6943359375 0.9171511627906976 diff --git a/VOC/labels/train/04820.txt b/VOC/labels/train/04820.txt new file mode 100644 index 0000000..8c4a719 --- /dev/null +++ b/VOC/labels/train/04820.txt @@ -0,0 +1,2 @@ +1 0.243 0.364 0.266 0.44 +1 0.863 0.3373333333333333 0.23800000000000002 0.408 diff --git a/VOC/labels/train/04830.txt b/VOC/labels/train/04830.txt new file mode 100644 index 0000000..8907ebd --- /dev/null +++ b/VOC/labels/train/04830.txt @@ -0,0 +1 @@ +1 0.4482421875 0.2092267706302794 0.392578125 0.33398310591293046 diff --git a/VOC/labels/train/04840.txt b/VOC/labels/train/04840.txt new file mode 100644 index 0000000..68bd88c --- /dev/null +++ b/VOC/labels/train/04840.txt @@ -0,0 +1 @@ +1 0.4609375 0.3677083333333333 0.284375 0.46041666666666664 diff --git a/VOC/labels/train/04850.txt b/VOC/labels/train/04850.txt new file mode 100644 index 0000000..7f7a7e9 --- /dev/null +++ b/VOC/labels/train/04850.txt @@ -0,0 +1 @@ +1 0.53076171875 0.3577732518669382 0.5498046875 0.49015614392396467 diff --git a/VOC/labels/train/04860.txt b/VOC/labels/train/04860.txt new file mode 100644 index 0000000..bc53f29 --- /dev/null +++ b/VOC/labels/train/04860.txt @@ -0,0 +1 @@ +1 0.57421875 0.20219966159052452 0.31640625 0.32148900169204736 diff --git a/VOC/labels/train/04870.txt b/VOC/labels/train/04870.txt new file mode 100644 index 0000000..bfea1cf --- /dev/null +++ b/VOC/labels/train/04870.txt @@ -0,0 +1,5 @@ +1 0.10302734375 0.1044776119402985 0.0927734375 0.14626865671641792 +1 0.30029296875 0.10298507462686567 0.0673828125 0.1373134328358209 +1 0.44775390625 0.10671641791044777 0.0751953125 0.14477611940298507 +1 0.67138671875 0.12462686567164179 0.0791015625 0.15074626865671642 +1 0.89404296875 0.08432835820895522 0.0791015625 0.14477611940298507 diff --git a/VOC/labels/train/04880.txt b/VOC/labels/train/04880.txt new file mode 100644 index 0000000..517c6fe --- /dev/null +++ b/VOC/labels/train/04880.txt @@ -0,0 +1 @@ +1 0.724609375 0.24853372434017595 0.166015625 0.24780058651026393 diff --git a/VOC/labels/train/04890.txt b/VOC/labels/train/04890.txt new file mode 100644 index 0000000..ce5c1f2 --- /dev/null +++ b/VOC/labels/train/04890.txt @@ -0,0 +1 @@ +1 0.41845703125 0.08903712296983758 0.1982421875 0.15371229698375868 diff --git a/VOC/labels/train/04900.txt b/VOC/labels/train/04900.txt new file mode 100644 index 0000000..9dffe9e --- /dev/null +++ b/VOC/labels/train/04900.txt @@ -0,0 +1 @@ +1 0.5609375 0.37083333333333335 0.140625 0.21666666666666667 diff --git a/VOC/labels/train/04910.txt b/VOC/labels/train/04910.txt new file mode 100644 index 0000000..0ca4ffc --- /dev/null +++ b/VOC/labels/train/04910.txt @@ -0,0 +1 @@ +1 0.596875 0.4708333333333333 0.24375000000000002 0.35 diff --git a/VOC/labels/train/04920.txt b/VOC/labels/train/04920.txt new file mode 100644 index 0000000..90cfbd9 --- /dev/null +++ b/VOC/labels/train/04920.txt @@ -0,0 +1 @@ +1 0.565625 0.4114583333333333 0.16875 0.26875 diff --git a/VOC/labels/train/04930.txt b/VOC/labels/train/04930.txt new file mode 100644 index 0000000..d078242 --- /dev/null +++ b/VOC/labels/train/04930.txt @@ -0,0 +1 @@ +1 0.5750000000000001 0.31979166666666664 0.234375 0.3020833333333333 diff --git a/VOC/labels/train/04940.txt b/VOC/labels/train/04940.txt new file mode 100644 index 0000000..f4ea011 --- /dev/null +++ b/VOC/labels/train/04940.txt @@ -0,0 +1 @@ +1 0.47705078125 0.18591934381408068 0.2958984375 0.2460697197539303 diff --git a/VOC/labels/train/04960.txt b/VOC/labels/train/04960.txt new file mode 100644 index 0000000..edbb23d --- /dev/null +++ b/VOC/labels/train/04960.txt @@ -0,0 +1,5 @@ +1 0.2587890625 0.13715277777777776 0.099609375 0.2534722222222222 +1 0.34375 0.2690972222222222 0.076171875 0.20138888888888887 +1 0.53173828125 0.2803819444444444 0.0732421875 0.203125 +1 0.67333984375 0.19791666666666666 0.0947265625 0.2361111111111111 +1 0.796875 0.203125 0.109375 0.2569444444444444 diff --git a/VOC/labels/train/04970.txt b/VOC/labels/train/04970.txt new file mode 100644 index 0000000..602cb59 --- /dev/null +++ b/VOC/labels/train/04970.txt @@ -0,0 +1,2 @@ +1 0.296875 0.18740849194729137 0.169921875 0.2664714494875549 +1 0.74169921875 0.3726207906295754 0.1572265625 0.28550512445095166 diff --git a/VOC/labels/train/04980.txt b/VOC/labels/train/04980.txt new file mode 100644 index 0000000..e8a8a5d --- /dev/null +++ b/VOC/labels/train/04980.txt @@ -0,0 +1 @@ +1 0.383 0.23199999999999998 0.198 0.3253333333333333 diff --git a/VOC/labels/train/04990.txt b/VOC/labels/train/04990.txt new file mode 100644 index 0000000..d1b2345 --- /dev/null +++ b/VOC/labels/train/04990.txt @@ -0,0 +1 @@ +1 0.5203125000000001 0.4666666666666667 0.203125 0.275 diff --git a/VOC/labels/train/05000.txt b/VOC/labels/train/05000.txt new file mode 100644 index 0000000..74d01ca --- /dev/null +++ b/VOC/labels/train/05000.txt @@ -0,0 +1,3 @@ +1 0.244140625 0.362339514978602 0.10546875 0.2253922967189729 +1 0.47216796875 0.34807417974322397 0.1298828125 0.2225392296718973 +1 0.6845703125 0.30028530670470754 0.181640625 0.23537803138373753 diff --git a/VOC/labels/train/05010.txt b/VOC/labels/train/05010.txt new file mode 100644 index 0000000..8d1a5f8 --- /dev/null +++ b/VOC/labels/train/05010.txt @@ -0,0 +1 @@ +1 0.5125000000000001 0.4927083333333333 0.1875 0.3104166666666667 diff --git a/VOC/labels/train/05030.txt b/VOC/labels/train/05030.txt new file mode 100644 index 0000000..7f34d1c --- /dev/null +++ b/VOC/labels/train/05030.txt @@ -0,0 +1 @@ +1 0.42822265625 0.34222972972972976 0.5244140625 0.5047297297297297 diff --git a/VOC/labels/train/05040.txt b/VOC/labels/train/05040.txt new file mode 100644 index 0000000..91e762e --- /dev/null +++ b/VOC/labels/train/05040.txt @@ -0,0 +1 @@ +1 0.5375 0.4322916666666667 0.1875 0.27291666666666664 diff --git a/VOC/labels/train/05050.txt b/VOC/labels/train/05050.txt new file mode 100644 index 0000000..4b20db1 --- /dev/null +++ b/VOC/labels/train/05050.txt @@ -0,0 +1 @@ +1 0.5146484375 0.14344783715012724 0.236328125 0.20165394402035625 diff --git a/VOC/labels/train/05060.txt b/VOC/labels/train/05060.txt new file mode 100644 index 0000000..6572db1 --- /dev/null +++ b/VOC/labels/train/05060.txt @@ -0,0 +1 @@ +1 0.5625 0.340625 0.209375 0.32708333333333334 diff --git a/VOC/labels/train/05070.txt b/VOC/labels/train/05070.txt new file mode 100644 index 0000000..3cc7545 --- /dev/null +++ b/VOC/labels/train/05070.txt @@ -0,0 +1,3 @@ +1 0.251953125 0.15428764348413235 0.17578125 0.1424713031735314 +1 0.56201171875 0.2025658338960162 0.1533203125 0.12964213369345037 +1 0.8544921875 0.09047940580688725 0.11328125 0.0837272113436867 diff --git a/VOC/labels/train/05080.txt b/VOC/labels/train/05080.txt new file mode 100644 index 0000000..d181923 --- /dev/null +++ b/VOC/labels/train/05080.txt @@ -0,0 +1 @@ +1 0.53369140625 0.38888888888888884 0.3076171875 0.652046783625731 diff --git a/VOC/labels/train/05090.txt b/VOC/labels/train/05090.txt new file mode 100644 index 0000000..a5f01f8 --- /dev/null +++ b/VOC/labels/train/05090.txt @@ -0,0 +1,2 @@ +1 0.302734375 0.16453100973859558 0.20703125 0.11481291645310097 +1 0.54296875 0.09328549461814453 0.1875 0.12403895438236802 diff --git a/VOC/labels/train/05100.txt b/VOC/labels/train/05100.txt new file mode 100644 index 0000000..5a7b19c --- /dev/null +++ b/VOC/labels/train/05100.txt @@ -0,0 +1 @@ +1 0.52578125 0.5208333333333334 0.2015625 0.3333333333333333 diff --git a/VOC/labels/train/05110.txt b/VOC/labels/train/05110.txt new file mode 100644 index 0000000..dccef92 --- /dev/null +++ b/VOC/labels/train/05110.txt @@ -0,0 +1 @@ +1 0.5125000000000001 0.421875 0.20625000000000002 0.30625 diff --git a/VOC/labels/train/05130.txt b/VOC/labels/train/05130.txt new file mode 100644 index 0000000..d2ca967 --- /dev/null +++ b/VOC/labels/train/05130.txt @@ -0,0 +1 @@ +1 0.41718750000000004 0.34479166666666666 0.23750000000000002 0.33125 diff --git a/VOC/labels/train/05140.txt b/VOC/labels/train/05140.txt new file mode 100644 index 0000000..af5f2fa --- /dev/null +++ b/VOC/labels/train/05140.txt @@ -0,0 +1 @@ +1 0.453125 0.33210208193418406 0.548828125 0.4667562122229685 diff --git a/VOC/labels/train/05150.txt b/VOC/labels/train/05150.txt new file mode 100644 index 0000000..956bb14 --- /dev/null +++ b/VOC/labels/train/05150.txt @@ -0,0 +1 @@ +1 0.52734375 0.4125 0.1484375 0.25416666666666665 diff --git a/VOC/labels/train/05160.txt b/VOC/labels/train/05160.txt new file mode 100644 index 0000000..9f8aeff --- /dev/null +++ b/VOC/labels/train/05160.txt @@ -0,0 +1 @@ +1 0.49267578125 0.36503267973856207 0.4169921875 0.365359477124183 diff --git a/VOC/labels/train/05190.txt b/VOC/labels/train/05190.txt new file mode 100644 index 0000000..f370ab9 --- /dev/null +++ b/VOC/labels/train/05190.txt @@ -0,0 +1 @@ +1 0.3408203125 0.38095238095238093 0.34765625 0.550595238095238 diff --git a/VOC/labels/train/05200.txt b/VOC/labels/train/05200.txt new file mode 100644 index 0000000..83eb58b --- /dev/null +++ b/VOC/labels/train/05200.txt @@ -0,0 +1 @@ +1 0.6585937500000001 0.42083333333333334 0.1921875 0.2791666666666667 diff --git a/VOC/labels/train/05210.txt b/VOC/labels/train/05210.txt new file mode 100644 index 0000000..5aa3cc6 --- /dev/null +++ b/VOC/labels/train/05210.txt @@ -0,0 +1 @@ +1 0.5087890625 0.2787878787878788 0.42578125 0.39057239057239057 diff --git a/VOC/labels/train/05220.txt b/VOC/labels/train/05220.txt new file mode 100644 index 0000000..d4761f2 --- /dev/null +++ b/VOC/labels/train/05220.txt @@ -0,0 +1 @@ +1 0.513671875 0.30116959064327486 0.4921875 0.4567901234567901 diff --git a/VOC/labels/train/05230.txt b/VOC/labels/train/05230.txt new file mode 100644 index 0000000..03c2f58 --- /dev/null +++ b/VOC/labels/train/05230.txt @@ -0,0 +1,2 @@ +1 0.37060546875 0.11023255813953489 0.1025390625 0.10697674418604652 +1 0.60302734375 0.1316279069767442 0.1337890625 0.14976744186046512 diff --git a/VOC/labels/train/05240.txt b/VOC/labels/train/05240.txt new file mode 100644 index 0000000..a7e2f69 --- /dev/null +++ b/VOC/labels/train/05240.txt @@ -0,0 +1 @@ +1 0.5554687500000001 0.37395833333333334 0.1640625 0.26458333333333334 diff --git a/VOC/labels/train/05250.txt b/VOC/labels/train/05250.txt new file mode 100644 index 0000000..919a07c --- /dev/null +++ b/VOC/labels/train/05250.txt @@ -0,0 +1 @@ +1 0.52490234375 0.2087912087912088 0.2314453125 0.24468864468864468 diff --git a/VOC/labels/train/05260.txt b/VOC/labels/train/05260.txt new file mode 100644 index 0000000..a2b17aa --- /dev/null +++ b/VOC/labels/train/05260.txt @@ -0,0 +1 @@ +1 0.5085937500000001 0.4083333333333333 0.2265625 0.3625 diff --git a/VOC/labels/train/05270.txt b/VOC/labels/train/05270.txt new file mode 100644 index 0000000..e912478 --- /dev/null +++ b/VOC/labels/train/05270.txt @@ -0,0 +1,2 @@ +1 0.2626953125 0.42178594046865103 0.265625 0.18492716909436352 +1 0.62890625 0.22197593413552882 0.3125 0.2045598480050665 diff --git a/VOC/labels/train/05280.txt b/VOC/labels/train/05280.txt new file mode 100644 index 0000000..f5dffca --- /dev/null +++ b/VOC/labels/train/05280.txt @@ -0,0 +1,3 @@ +1 0.162109375 0.22082228116710875 0.140625 0.21883289124668434 +1 0.40869140625 0.3521220159151193 0.1318359375 0.20557029177718833 +1 0.72802734375 0.13660477453580902 0.1513671875 0.24137931034482757 diff --git a/VOC/labels/train/05290.txt b/VOC/labels/train/05290.txt new file mode 100644 index 0000000..cbc89b2 --- /dev/null +++ b/VOC/labels/train/05290.txt @@ -0,0 +1 @@ +1 0.439453125 0.2530463038180341 0.328125 0.3160032493907392 diff --git a/VOC/labels/train/05300.txt b/VOC/labels/train/05300.txt new file mode 100644 index 0000000..20fdf67 --- /dev/null +++ b/VOC/labels/train/05300.txt @@ -0,0 +1 @@ +1 0.6005859375 0.41727672035139096 0.33984375 0.6617862371888726 diff --git a/VOC/labels/train/05310.txt b/VOC/labels/train/05310.txt new file mode 100644 index 0000000..f962c89 --- /dev/null +++ b/VOC/labels/train/05310.txt @@ -0,0 +1 @@ +1 0.61640625 0.4635416666666667 0.1921875 0.31875 diff --git a/VOC/labels/train/05320.txt b/VOC/labels/train/05320.txt new file mode 100644 index 0000000..91da03d --- /dev/null +++ b/VOC/labels/train/05320.txt @@ -0,0 +1 @@ +1 0.5234375 0.38645833333333335 0.171875 0.2520833333333333 diff --git a/VOC/labels/train/05330.txt b/VOC/labels/train/05330.txt new file mode 100644 index 0000000..58b3a39 --- /dev/null +++ b/VOC/labels/train/05330.txt @@ -0,0 +1,3 @@ +1 0.14013671875 0.1856763925729443 0.1494140625 0.2679045092838196 +1 0.6513671875 0.15649867374005305 0.119140625 0.1909814323607427 +1 0.83251953125 0.22745358090185674 0.1416015625 0.24005305039787797 diff --git a/VOC/labels/train/05340.txt b/VOC/labels/train/05340.txt new file mode 100644 index 0000000..5b63202 --- /dev/null +++ b/VOC/labels/train/05340.txt @@ -0,0 +1 @@ +1 0.5029296875 0.3155339805825243 0.658203125 0.5145631067961165 diff --git a/VOC/labels/train/05350.txt b/VOC/labels/train/05350.txt new file mode 100644 index 0000000..28ca8d9 --- /dev/null +++ b/VOC/labels/train/05350.txt @@ -0,0 +1,4 @@ +1 0.34800000000000003 0.5493333333333333 0.14 0.21866666666666665 +1 0.455 0.5426666666666666 0.08600000000000001 0.17866666666666667 +1 0.5630000000000001 0.5266666666666666 0.08600000000000001 0.18933333333333333 +1 0.624 0.4066666666666667 0.116 0.19466666666666665 diff --git a/VOC/labels/train/05360.txt b/VOC/labels/train/05360.txt new file mode 100644 index 0000000..a595999 --- /dev/null +++ b/VOC/labels/train/05360.txt @@ -0,0 +1 @@ +1 0.58125 0.3302083333333333 0.1875 0.29375 diff --git a/VOC/labels/train/05370.txt b/VOC/labels/train/05370.txt new file mode 100644 index 0000000..ad56f5d --- /dev/null +++ b/VOC/labels/train/05370.txt @@ -0,0 +1,4 @@ +1 0.1943359375 0.20081967213114754 0.1953125 0.30327868852459017 +1 0.40869140625 0.40505464480874315 0.2197265625 0.48770491803278687 +1 0.609375 0.4692622950819672 0.193359375 0.5286885245901639 +1 0.8291015625 0.34972677595628415 0.251953125 0.5491803278688525 diff --git a/VOC/labels/train/05380.txt b/VOC/labels/train/05380.txt new file mode 100644 index 0000000..5a89cf8 --- /dev/null +++ b/VOC/labels/train/05380.txt @@ -0,0 +1 @@ +1 0.5439453125 0.40150943396226413 0.69140625 0.7079245283018868 diff --git a/VOC/labels/train/05390.txt b/VOC/labels/train/05390.txt new file mode 100644 index 0000000..1e1caa9 --- /dev/null +++ b/VOC/labels/train/05390.txt @@ -0,0 +1 @@ +1 0.50830078125 0.36181640625 0.5810546875 0.6240234375 diff --git a/VOC/labels/train/05400.txt b/VOC/labels/train/05400.txt new file mode 100644 index 0000000..27a86c8 --- /dev/null +++ b/VOC/labels/train/05400.txt @@ -0,0 +1,2 @@ +1 0.2626953125 0.14454277286135692 0.1640625 0.28023598820059 +1 0.66943359375 0.2411504424778761 0.1357421875 0.23156342182890854 diff --git a/VOC/labels/train/05410.txt b/VOC/labels/train/05410.txt new file mode 100644 index 0000000..1a6da95 --- /dev/null +++ b/VOC/labels/train/05410.txt @@ -0,0 +1 @@ +1 0.73583984375 0.23291015625 0.1357421875 0.1416015625 diff --git a/VOC/labels/train/05420.txt b/VOC/labels/train/05420.txt new file mode 100644 index 0000000..ef74928 --- /dev/null +++ b/VOC/labels/train/05420.txt @@ -0,0 +1,5 @@ +1 0.23500000000000001 0.281524926686217 0.094 0.187683284457478 +1 0.385 0.32991202346041054 0.094 0.17302052785923755 +1 0.516 0.30791788856304986 0.1 0.187683284457478 +1 0.644 0.22140762463343108 0.112 0.19648093841642228 +1 0.752 0.17302052785923755 0.10400000000000001 0.21114369501466276 diff --git a/VOC/labels/train/05430.txt b/VOC/labels/train/05430.txt new file mode 100644 index 0000000..cbb5871 --- /dev/null +++ b/VOC/labels/train/05430.txt @@ -0,0 +1 @@ +1 0.5234375 0.5010416666666666 0.21250000000000002 0.34375 diff --git a/VOC/labels/train/05440.txt b/VOC/labels/train/05440.txt new file mode 100644 index 0000000..22ad6b1 --- /dev/null +++ b/VOC/labels/train/05440.txt @@ -0,0 +1 @@ +1 0.5554687500000001 0.421875 0.1953125 0.26875 diff --git a/VOC/labels/train/05450.txt b/VOC/labels/train/05450.txt new file mode 100644 index 0000000..5c33ae9 --- /dev/null +++ b/VOC/labels/train/05450.txt @@ -0,0 +1 @@ +1 0.6234375000000001 0.21666666666666667 0.19062500000000002 0.30833333333333335 diff --git a/VOC/labels/train/05460.txt b/VOC/labels/train/05460.txt new file mode 100644 index 0000000..251a1c6 --- /dev/null +++ b/VOC/labels/train/05460.txt @@ -0,0 +1 @@ +1 0.46015625000000004 0.3927083333333333 0.2265625 0.3020833333333333 diff --git a/VOC/labels/train/05480.txt b/VOC/labels/train/05480.txt new file mode 100644 index 0000000..c87fa2b --- /dev/null +++ b/VOC/labels/train/05480.txt @@ -0,0 +1 @@ +1 0.5380859375 0.23046875 0.3125 0.22916666666666666 diff --git a/VOC/labels/train/05490.txt b/VOC/labels/train/05490.txt new file mode 100644 index 0000000..ca69e52 --- /dev/null +++ b/VOC/labels/train/05490.txt @@ -0,0 +1 @@ +1 0.5453125 0.37083333333333335 0.1875 0.2708333333333333 diff --git a/VOC/labels/train/05500.txt b/VOC/labels/train/05500.txt new file mode 100644 index 0000000..622d19b --- /dev/null +++ b/VOC/labels/train/05500.txt @@ -0,0 +1 @@ +1 0.5185546875 0.3033405172413793 0.708984375 0.47844827586206895 diff --git a/VOC/labels/train/05510.txt b/VOC/labels/train/05510.txt new file mode 100644 index 0000000..b023fb4 --- /dev/null +++ b/VOC/labels/train/05510.txt @@ -0,0 +1,2 @@ +1 0.24951171875 0.09556962025316455 0.0986328125 0.14303797468354432 +1 0.74072265625 0.2569620253164557 0.2763671875 0.4 diff --git a/VOC/labels/train/05520.txt b/VOC/labels/train/05520.txt new file mode 100644 index 0000000..4f4f295 --- /dev/null +++ b/VOC/labels/train/05520.txt @@ -0,0 +1 @@ +1 0.462890625 0.3911516853932584 0.525390625 0.5323033707865168 diff --git a/VOC/labels/train/05530.txt b/VOC/labels/train/05530.txt new file mode 100644 index 0000000..dd8c3b0 --- /dev/null +++ b/VOC/labels/train/05530.txt @@ -0,0 +1 @@ +1 0.4859375 0.33229166666666665 0.1875 0.29791666666666666 diff --git a/VOC/labels/train/05540.txt b/VOC/labels/train/05540.txt new file mode 100644 index 0000000..f34a793 --- /dev/null +++ b/VOC/labels/train/05540.txt @@ -0,0 +1 @@ +1 0.56640625 0.3489583333333333 0.2234375 0.32708333333333334 diff --git a/VOC/labels/train/05550.txt b/VOC/labels/train/05550.txt new file mode 100644 index 0000000..c604619 --- /dev/null +++ b/VOC/labels/train/05550.txt @@ -0,0 +1 @@ +1 0.56689453125 0.165860400829302 0.3388671875 0.2736696613683483 diff --git a/VOC/labels/train/05560.txt b/VOC/labels/train/05560.txt new file mode 100644 index 0000000..00cecbd --- /dev/null +++ b/VOC/labels/train/05560.txt @@ -0,0 +1 @@ +1 0.6125 0.3885416666666667 0.15937500000000002 0.2520833333333333 diff --git a/VOC/labels/train/05570.txt b/VOC/labels/train/05570.txt new file mode 100644 index 0000000..7ceac10 --- /dev/null +++ b/VOC/labels/train/05570.txt @@ -0,0 +1 @@ +1 0.52890625 0.38125 0.2109375 0.325 diff --git a/VOC/labels/train/05590.txt b/VOC/labels/train/05590.txt new file mode 100644 index 0000000..f13d28b --- /dev/null +++ b/VOC/labels/train/05590.txt @@ -0,0 +1 @@ +1 0.4990234375 0.3113465481886535 0.541015625 0.5051264524948735 diff --git a/VOC/labels/train/05600.txt b/VOC/labels/train/05600.txt new file mode 100644 index 0000000..ac319f5 --- /dev/null +++ b/VOC/labels/train/05600.txt @@ -0,0 +1,2 @@ +1 0.359375 0.4416666666666667 0.12708333333333333 0.312962962962963 +1 0.6833333333333333 0.36203703703703705 0.18125 0.38703703703703707 diff --git a/VOC/labels/train/05610.txt b/VOC/labels/train/05610.txt new file mode 100644 index 0000000..7417f7f --- /dev/null +++ b/VOC/labels/train/05610.txt @@ -0,0 +1 @@ +1 0.55 0.3645833333333333 0.19375 0.2875 diff --git a/VOC/labels/train/05620.txt b/VOC/labels/train/05620.txt new file mode 100644 index 0000000..cfd6c6c --- /dev/null +++ b/VOC/labels/train/05620.txt @@ -0,0 +1 @@ +1 0.498046875 0.3442265795206972 0.392578125 0.38344226579520696 diff --git a/VOC/labels/train/05630.txt b/VOC/labels/train/05630.txt new file mode 100644 index 0000000..b4c3078 --- /dev/null +++ b/VOC/labels/train/05630.txt @@ -0,0 +1 @@ +1 0.585 0.216 0.074 0.12266666666666666 diff --git a/VOC/labels/train/05640.txt b/VOC/labels/train/05640.txt new file mode 100644 index 0000000..2c03758 --- /dev/null +++ b/VOC/labels/train/05640.txt @@ -0,0 +1,2 @@ +1 0.43798828125 0.1554185593770279 0.1767578125 0.1563919532770928 +1 0.6015625 0.12199870214146658 0.1640625 0.15833874107722257 diff --git a/VOC/labels/train/05650.txt b/VOC/labels/train/05650.txt new file mode 100644 index 0000000..2a53fac --- /dev/null +++ b/VOC/labels/train/05650.txt @@ -0,0 +1 @@ +1 0.45068359375 0.3552927927927928 0.3037109375 0.4380630630630631 diff --git a/VOC/labels/train/05660.txt b/VOC/labels/train/05660.txt new file mode 100644 index 0000000..76a0b2b --- /dev/null +++ b/VOC/labels/train/05660.txt @@ -0,0 +1 @@ +1 0.48828125 0.09528552456839309 0.1640625 0.1347941567065073 diff --git a/VOC/labels/train/05670.txt b/VOC/labels/train/05670.txt new file mode 100644 index 0000000..dd744f3 --- /dev/null +++ b/VOC/labels/train/05670.txt @@ -0,0 +1 @@ +1 0.50830078125 0.22403982930298721 0.3173828125 0.30725462304409673 diff --git a/VOC/labels/train/05680.txt b/VOC/labels/train/05680.txt new file mode 100644 index 0000000..db2d9cf --- /dev/null +++ b/VOC/labels/train/05680.txt @@ -0,0 +1 @@ +1 0.5673828125 0.21141185076810534 0.265625 0.24140453547915144 diff --git a/VOC/labels/train/05690.txt b/VOC/labels/train/05690.txt new file mode 100644 index 0000000..41d5e4f --- /dev/null +++ b/VOC/labels/train/05690.txt @@ -0,0 +1 @@ +1 0.46875 0.46458333333333335 0.225 0.3458333333333333 diff --git a/VOC/labels/train/05700.txt b/VOC/labels/train/05700.txt new file mode 100644 index 0000000..59a109b --- /dev/null +++ b/VOC/labels/train/05700.txt @@ -0,0 +1 @@ +1 0.6261261261261262 0.17200000000000001 0.24324324324324323 0.18 diff --git a/VOC/labels/train/05710.txt b/VOC/labels/train/05710.txt new file mode 100644 index 0000000..fd664ba --- /dev/null +++ b/VOC/labels/train/05710.txt @@ -0,0 +1 @@ +1 0.5140625 0.3385416666666667 0.16875 0.23958333333333334 diff --git a/VOC/labels/train/05720.txt b/VOC/labels/train/05720.txt new file mode 100644 index 0000000..6c3f186 --- /dev/null +++ b/VOC/labels/train/05720.txt @@ -0,0 +1 @@ +1 0.6062500000000001 0.4739583333333333 0.2 0.3104166666666667 diff --git a/VOC/labels/train/05730.txt b/VOC/labels/train/05730.txt new file mode 100644 index 0000000..0b1ff52 --- /dev/null +++ b/VOC/labels/train/05730.txt @@ -0,0 +1 @@ +1 0.41015625 0.37632978723404253 0.484375 0.5895390070921985 diff --git a/VOC/labels/train/05740.txt b/VOC/labels/train/05740.txt new file mode 100644 index 0000000..0c3f2bd --- /dev/null +++ b/VOC/labels/train/05740.txt @@ -0,0 +1 @@ +1 0.49267578125 0.2848984771573604 0.4990234375 0.4175126903553299 diff --git a/VOC/labels/train/05750.txt b/VOC/labels/train/05750.txt new file mode 100644 index 0000000..7ae2703 --- /dev/null +++ b/VOC/labels/train/05750.txt @@ -0,0 +1 @@ +1 0.43310546875 0.4554036458333333 0.7314453125 0.669921875 diff --git a/VOC/labels/train/05760.txt b/VOC/labels/train/05760.txt new file mode 100644 index 0000000..88a6b4e --- /dev/null +++ b/VOC/labels/train/05760.txt @@ -0,0 +1 @@ +1 0.48974609375 0.34372652141247184 0.4892578125 0.4380165289256199 diff --git a/VOC/labels/train/05770.txt b/VOC/labels/train/05770.txt new file mode 100644 index 0000000..0e58b27 --- /dev/null +++ b/VOC/labels/train/05770.txt @@ -0,0 +1 @@ +1 0.36083984375 0.1631892697466468 0.1240234375 0.2399403874813711 diff --git a/VOC/labels/train/05780.txt b/VOC/labels/train/05780.txt new file mode 100644 index 0000000..780d4d8 --- /dev/null +++ b/VOC/labels/train/05780.txt @@ -0,0 +1 @@ +1 0.5007812500000001 0.5239583333333333 0.2265625 0.31875 diff --git a/VOC/labels/train/05790.txt b/VOC/labels/train/05790.txt new file mode 100644 index 0000000..1f0fcac --- /dev/null +++ b/VOC/labels/train/05790.txt @@ -0,0 +1 @@ +1 0.46044921875 0.2324128862590401 0.5302734375 0.4635108481262328 diff --git a/VOC/labels/train/05800.txt b/VOC/labels/train/05800.txt new file mode 100644 index 0000000..e165fe8 --- /dev/null +++ b/VOC/labels/train/05800.txt @@ -0,0 +1 @@ +1 0.53369140625 0.11749633967789166 0.2060546875 0.20571010248901905 diff --git a/VOC/labels/train/05810.txt b/VOC/labels/train/05810.txt new file mode 100644 index 0000000..d384dd3 --- /dev/null +++ b/VOC/labels/train/05810.txt @@ -0,0 +1 @@ +1 0.54296875 0.4041666666666667 0.1953125 0.3541666666666667 diff --git a/VOC/labels/train/05820.txt b/VOC/labels/train/05820.txt new file mode 100644 index 0000000..2ad1234 --- /dev/null +++ b/VOC/labels/train/05820.txt @@ -0,0 +1 @@ +1 0.6234375000000001 0.428125 0.21875 0.30625 diff --git a/VOC/labels/train/05830.txt b/VOC/labels/train/05830.txt new file mode 100644 index 0000000..873f6f0 --- /dev/null +++ b/VOC/labels/train/05830.txt @@ -0,0 +1,2 @@ +1 0.18359375 0.1611328125 0.30859375 0.3046875 +1 0.8427734375 0.2021484375 0.314453125 0.36328125 diff --git a/VOC/labels/train/05840.txt b/VOC/labels/train/05840.txt new file mode 100644 index 0000000..0857839 --- /dev/null +++ b/VOC/labels/train/05840.txt @@ -0,0 +1 @@ +1 0.52578125 0.38229166666666664 0.1609375 0.22708333333333333 diff --git a/VOC/labels/train/05860.txt b/VOC/labels/train/05860.txt new file mode 100644 index 0000000..72e82a8 --- /dev/null +++ b/VOC/labels/train/05860.txt @@ -0,0 +1 @@ +1 0.505859375 0.34421460892049127 0.46875 0.38073691014867483 diff --git a/VOC/labels/train/05890.txt b/VOC/labels/train/05890.txt new file mode 100644 index 0000000..6d1f431 --- /dev/null +++ b/VOC/labels/train/05890.txt @@ -0,0 +1 @@ +1 0.540625 0.3833333333333333 0.19375 0.2833333333333333 diff --git a/VOC/labels/train/05900.txt b/VOC/labels/train/05900.txt new file mode 100644 index 0000000..ed74c99 --- /dev/null +++ b/VOC/labels/train/05900.txt @@ -0,0 +1 @@ +1 0.54921875 0.428125 0.2078125 0.31875 diff --git a/VOC/labels/train/05910.txt b/VOC/labels/train/05910.txt new file mode 100644 index 0000000..40bc758 --- /dev/null +++ b/VOC/labels/train/05910.txt @@ -0,0 +1 @@ +1 0.53125 0.30045572916666663 0.595703125 0.482421875 diff --git a/VOC/labels/train/05920.txt b/VOC/labels/train/05920.txt new file mode 100644 index 0000000..6fb9457 --- /dev/null +++ b/VOC/labels/train/05920.txt @@ -0,0 +1 @@ +1 0.4921875 0.3772391991570074 0.458984375 0.613277133825079 diff --git a/VOC/labels/train/05930.txt b/VOC/labels/train/05930.txt new file mode 100644 index 0000000..45d1d12 --- /dev/null +++ b/VOC/labels/train/05930.txt @@ -0,0 +1 @@ +1 0.55078125 0.4041666666666667 0.22968750000000002 0.30416666666666664 diff --git a/VOC/labels/train/05940.txt b/VOC/labels/train/05940.txt new file mode 100644 index 0000000..01f089c --- /dev/null +++ b/VOC/labels/train/05940.txt @@ -0,0 +1 @@ +1 0.47998046875 0.28626220362622035 0.5166015625 0.4442119944211994 diff --git a/VOC/labels/train/05950.txt b/VOC/labels/train/05950.txt new file mode 100644 index 0000000..fb93f70 --- /dev/null +++ b/VOC/labels/train/05950.txt @@ -0,0 +1 @@ +1 0.553125 0.47812499999999997 0.215625 0.3104166666666667 diff --git a/VOC/labels/train/05960.txt b/VOC/labels/train/05960.txt new file mode 100644 index 0000000..df69c0e --- /dev/null +++ b/VOC/labels/train/05960.txt @@ -0,0 +1,2 @@ +1 0.3067708333333333 0.40185185185185185 0.19479166666666667 0.4518518518518519 +1 0.73125 0.2916666666666667 0.24166666666666667 0.5092592592592593 diff --git a/VOC/labels/train/05970.txt b/VOC/labels/train/05970.txt new file mode 100644 index 0000000..81c1e2b --- /dev/null +++ b/VOC/labels/train/05970.txt @@ -0,0 +1,3 @@ +1 0.515 0.2813333333333333 0.082 0.14666666666666667 +1 0.603 0.21466666666666667 0.082 0.12 +1 0.719 0.09333333333333332 0.094 0.16533333333333333 diff --git a/VOC/labels/train/05980.txt b/VOC/labels/train/05980.txt new file mode 100644 index 0000000..d501611 --- /dev/null +++ b/VOC/labels/train/05980.txt @@ -0,0 +1 @@ +1 0.513671875 0.3125 0.376953125 0.328125 diff --git a/VOC/labels/train/05990.txt b/VOC/labels/train/05990.txt new file mode 100644 index 0000000..d84493a --- /dev/null +++ b/VOC/labels/train/05990.txt @@ -0,0 +1 @@ +1 0.56640625 0.4114583333333333 0.1765625 0.28125 diff --git a/VOC/labels/train/06010.txt b/VOC/labels/train/06010.txt new file mode 100644 index 0000000..6bdfe40 --- /dev/null +++ b/VOC/labels/train/06010.txt @@ -0,0 +1 @@ +1 0.5593750000000001 0.5239583333333333 0.1625 0.24375 diff --git a/VOC/labels/train/06020.txt b/VOC/labels/train/06020.txt new file mode 100644 index 0000000..ccd7ff3 --- /dev/null +++ b/VOC/labels/train/06020.txt @@ -0,0 +1 @@ +1 0.73779296875 0.36339522546419095 0.2314453125 0.3793103448275862 diff --git a/VOC/labels/train/06030.txt b/VOC/labels/train/06030.txt new file mode 100644 index 0000000..be093e3 --- /dev/null +++ b/VOC/labels/train/06030.txt @@ -0,0 +1,2 @@ +1 0.50830078125 0.2524578651685393 0.3095703125 0.2928370786516854 +1 0.10595703125 0.300561797752809 0.2060546875 0.1797752808988764 diff --git a/VOC/labels/train/06040.txt b/VOC/labels/train/06040.txt new file mode 100644 index 0000000..c76f7d2 --- /dev/null +++ b/VOC/labels/train/06040.txt @@ -0,0 +1 @@ +1 0.34130859375 0.34782608695652173 0.2236328125 0.46176911544227883 diff --git a/VOC/labels/train/06050.txt b/VOC/labels/train/06050.txt new file mode 100644 index 0000000..e159ebe --- /dev/null +++ b/VOC/labels/train/06050.txt @@ -0,0 +1 @@ +1 0.5864022662889519 0.242 0.4645892351274788 0.392 diff --git a/VOC/labels/train/06060.txt b/VOC/labels/train/06060.txt new file mode 100644 index 0000000..679fc48 --- /dev/null +++ b/VOC/labels/train/06060.txt @@ -0,0 +1 @@ +1 0.553125 0.453125 0.15625 0.25625 diff --git a/VOC/labels/train/06070.txt b/VOC/labels/train/06070.txt new file mode 100644 index 0000000..e2b0e1a --- /dev/null +++ b/VOC/labels/train/06070.txt @@ -0,0 +1 @@ +1 0.342 0.256 0.272 0.384 diff --git a/VOC/labels/train/06080.txt b/VOC/labels/train/06080.txt new file mode 100644 index 0000000..1f1a7be --- /dev/null +++ b/VOC/labels/train/06080.txt @@ -0,0 +1 @@ +1 0.6071428571428572 0.162 0.3116883116883117 0.248 diff --git a/VOC/labels/train/06090.txt b/VOC/labels/train/06090.txt new file mode 100644 index 0000000..ebf2206 --- /dev/null +++ b/VOC/labels/train/06090.txt @@ -0,0 +1 @@ +1 0.455078125 0.2099609375 0.330078125 0.22981770833333331 diff --git a/VOC/labels/train/06100.txt b/VOC/labels/train/06100.txt new file mode 100644 index 0000000..31d6b4f --- /dev/null +++ b/VOC/labels/train/06100.txt @@ -0,0 +1,4 @@ +1 0.11474609375 0.14588859416445624 0.2060546875 0.2838196286472148 +1 0.4765625 0.3381962864721485 0.142578125 0.20689655172413793 +1 0.66845703125 0.2745358090185676 0.1357421875 0.23342175066312995 +1 0.86376953125 0.1909814323607427 0.1689453125 0.27851458885941643 diff --git a/VOC/labels/train/06110.txt b/VOC/labels/train/06110.txt new file mode 100644 index 0000000..23f8ce5 --- /dev/null +++ b/VOC/labels/train/06110.txt @@ -0,0 +1 @@ +1 0.4927083333333333 0.34074074074074073 0.18333333333333332 0.4444444444444445 diff --git a/VOC/labels/train/06120.txt b/VOC/labels/train/06120.txt new file mode 100644 index 0000000..827eb8e --- /dev/null +++ b/VOC/labels/train/06120.txt @@ -0,0 +1 @@ +1 0.6062500000000001 0.4041666666666667 0.184375 0.2833333333333333 diff --git a/VOC/labels/train/06130.txt b/VOC/labels/train/06130.txt new file mode 100644 index 0000000..78fb0c9 --- /dev/null +++ b/VOC/labels/train/06130.txt @@ -0,0 +1 @@ +1 0.52734375 0.37083333333333335 0.2109375 0.35 diff --git a/VOC/labels/train/06140.txt b/VOC/labels/train/06140.txt new file mode 100644 index 0000000..b1ad81c --- /dev/null +++ b/VOC/labels/train/06140.txt @@ -0,0 +1 @@ +1 0.478515625 0.2880859375 0.447265625 0.3782552083333333 diff --git a/VOC/labels/train/06150.txt b/VOC/labels/train/06150.txt new file mode 100644 index 0000000..522a1a0 --- /dev/null +++ b/VOC/labels/train/06150.txt @@ -0,0 +1 @@ +1 0.373046875 0.24826388888888887 0.21875 0.38888888888888884 diff --git a/VOC/labels/train/06160.txt b/VOC/labels/train/06160.txt new file mode 100644 index 0000000..1e6fa4d --- /dev/null +++ b/VOC/labels/train/06160.txt @@ -0,0 +1 @@ +1 0.525 0.46458333333333335 0.18125000000000002 0.2375 diff --git a/VOC/labels/train/06170.txt b/VOC/labels/train/06170.txt new file mode 100644 index 0000000..92c3314 --- /dev/null +++ b/VOC/labels/train/06170.txt @@ -0,0 +1,4 @@ +1 0.1552734375 0.33421750663129973 0.16015625 0.2546419098143236 +1 0.35009765625 0.366710875331565 0.1787109375 0.22413793103448273 +1 0.6826171875 0.5 0.12109375 0.18302387267904507 +1 0.8349609375 0.24734748010610078 0.16796875 0.23209549071618035 diff --git a/VOC/labels/train/06180.txt b/VOC/labels/train/06180.txt new file mode 100644 index 0000000..2e163ac --- /dev/null +++ b/VOC/labels/train/06180.txt @@ -0,0 +1 @@ +1 0.512 0.41876750700280113 0.356 0.6302521008403361 diff --git a/VOC/labels/train/06200.txt b/VOC/labels/train/06200.txt new file mode 100644 index 0000000..435912a --- /dev/null +++ b/VOC/labels/train/06200.txt @@ -0,0 +1 @@ +1 0.246 0.4066666666666667 0.07200000000000001 0.12 diff --git a/VOC/labels/train/06210.txt b/VOC/labels/train/06210.txt new file mode 100644 index 0000000..678d7fd --- /dev/null +++ b/VOC/labels/train/06210.txt @@ -0,0 +1,2 @@ +1 0.5 0.306 0.1111111111111111 0.10400000000000001 +1 0.3333333333333333 0.431 0.0960960960960961 0.074 diff --git a/VOC/labels/train/06220.txt b/VOC/labels/train/06220.txt new file mode 100644 index 0000000..2381bb3 --- /dev/null +++ b/VOC/labels/train/06220.txt @@ -0,0 +1 @@ +1 0.5320312500000001 0.359375 0.1859375 0.28541666666666665 diff --git a/VOC/labels/train/06230.txt b/VOC/labels/train/06230.txt new file mode 100644 index 0000000..f5e9230 --- /dev/null +++ b/VOC/labels/train/06230.txt @@ -0,0 +1 @@ +1 0.4912109375 0.32459312839059673 0.412109375 0.45750452079566 diff --git a/VOC/labels/train/06250.txt b/VOC/labels/train/06250.txt new file mode 100644 index 0000000..f6088d6 --- /dev/null +++ b/VOC/labels/train/06250.txt @@ -0,0 +1 @@ +1 0.5087890625 0.3588681849551415 0.52734375 0.5410628019323671 diff --git a/VOC/labels/train/06260.txt b/VOC/labels/train/06260.txt new file mode 100644 index 0000000..7905467 --- /dev/null +++ b/VOC/labels/train/06260.txt @@ -0,0 +1 @@ +1 0.52783203125 0.46354166666666663 0.5380859375 0.8880208333333333 diff --git a/VOC/labels/train/06270.txt b/VOC/labels/train/06270.txt new file mode 100644 index 0000000..b158df6 --- /dev/null +++ b/VOC/labels/train/06270.txt @@ -0,0 +1 @@ +1 0.62 0.5093333333333333 0.328 0.5066666666666666 diff --git a/VOC/labels/train/06280.txt b/VOC/labels/train/06280.txt new file mode 100644 index 0000000..1408227 --- /dev/null +++ b/VOC/labels/train/06280.txt @@ -0,0 +1,3 @@ +1 0.19970703125 0.24342105263157893 0.1142578125 0.20614035087719296 +1 0.4150390625 0.34502923976608185 0.13671875 0.2046783625730994 +1 0.8046875 0.293859649122807 0.150390625 0.23391812865497075 diff --git a/VOC/labels/train/06290.txt b/VOC/labels/train/06290.txt new file mode 100644 index 0000000..5255918 --- /dev/null +++ b/VOC/labels/train/06290.txt @@ -0,0 +1 @@ +1 0.52587890625 0.22787318361955086 0.2255859375 0.32100396301188905 diff --git a/VOC/labels/train/06300.txt b/VOC/labels/train/06300.txt new file mode 100644 index 0000000..2320759 --- /dev/null +++ b/VOC/labels/train/06300.txt @@ -0,0 +1 @@ +1 0.58544921875 0.33088235294117646 0.2802734375 0.4852941176470588 diff --git a/VOC/labels/train/06310.txt b/VOC/labels/train/06310.txt new file mode 100644 index 0000000..0af704b --- /dev/null +++ b/VOC/labels/train/06310.txt @@ -0,0 +1 @@ +1 0.525 0.40625 0.21250000000000002 0.3 diff --git a/VOC/labels/train/06320.txt b/VOC/labels/train/06320.txt new file mode 100644 index 0000000..daf1372 --- /dev/null +++ b/VOC/labels/train/06320.txt @@ -0,0 +1 @@ +1 0.5825825825825826 0.316 0.3663663663663664 0.316 diff --git a/VOC/labels/train/06330.txt b/VOC/labels/train/06330.txt new file mode 100644 index 0000000..b911a8a --- /dev/null +++ b/VOC/labels/train/06330.txt @@ -0,0 +1 @@ +1 0.388 0.132 0.2906666666666667 0.232 diff --git a/VOC/labels/train/06340.txt b/VOC/labels/train/06340.txt new file mode 100644 index 0000000..32d6d2a --- /dev/null +++ b/VOC/labels/train/06340.txt @@ -0,0 +1,2 @@ +1 0.397 0.4532085561497326 0.114 0.17379679144385027 +1 0.6910000000000001 0.4304812834224599 0.11800000000000001 0.2032085561497326 diff --git a/VOC/labels/train/06350.txt b/VOC/labels/train/06350.txt new file mode 100644 index 0000000..e1b1242 --- /dev/null +++ b/VOC/labels/train/06350.txt @@ -0,0 +1 @@ +1 0.49843750000000003 0.43124999999999997 0.2 0.24166666666666667 diff --git a/VOC/labels/train/06360.txt b/VOC/labels/train/06360.txt new file mode 100644 index 0000000..a4dd15c --- /dev/null +++ b/VOC/labels/train/06360.txt @@ -0,0 +1,3 @@ +1 0.30908203125 0.2526525198938992 0.1376953125 0.24270557029177717 +1 0.44384765625 0.2606100795755968 0.1259765625 0.2029177718832891 +1 0.7509765625 0.14854111405835543 0.126953125 0.22015915119363394 diff --git a/VOC/labels/train/06370.txt b/VOC/labels/train/06370.txt new file mode 100644 index 0000000..69b58b9 --- /dev/null +++ b/VOC/labels/train/06370.txt @@ -0,0 +1 @@ +1 0.5859375 0.3104166666666667 0.178125 0.26666666666666666 diff --git a/VOC/labels/train/06380.txt b/VOC/labels/train/06380.txt new file mode 100644 index 0000000..a6129e7 --- /dev/null +++ b/VOC/labels/train/06380.txt @@ -0,0 +1 @@ +1 0.49169921875 0.29942418426103645 0.5986328125 0.46705054382597566 diff --git a/VOC/labels/train/06390.txt b/VOC/labels/train/06390.txt new file mode 100644 index 0000000..57bc40b --- /dev/null +++ b/VOC/labels/train/06390.txt @@ -0,0 +1 @@ +1 0.5328125 0.40729166666666666 0.209375 0.34791666666666665 diff --git a/VOC/labels/train/06400.txt b/VOC/labels/train/06400.txt new file mode 100644 index 0000000..cb4a36e --- /dev/null +++ b/VOC/labels/train/06400.txt @@ -0,0 +1 @@ +1 0.5875 0.384375 0.15625 0.23541666666666666 diff --git a/VOC/labels/train/06410.txt b/VOC/labels/train/06410.txt new file mode 100644 index 0000000..7e341c4 --- /dev/null +++ b/VOC/labels/train/06410.txt @@ -0,0 +1 @@ +1 0.5234375 0.35625 0.20625000000000002 0.31666666666666665 diff --git a/VOC/labels/train/06420.txt b/VOC/labels/train/06420.txt new file mode 100644 index 0000000..ce6c1b1 --- /dev/null +++ b/VOC/labels/train/06420.txt @@ -0,0 +1 @@ +1 0.4765625 0.40625 0.2625 0.4166666666666667 diff --git a/VOC/labels/train/06440.txt b/VOC/labels/train/06440.txt new file mode 100644 index 0000000..2381d3c --- /dev/null +++ b/VOC/labels/train/06440.txt @@ -0,0 +1 @@ +1 0.49062500000000003 0.4302083333333333 0.215625 0.30625 diff --git a/VOC/labels/train/06450.txt b/VOC/labels/train/06450.txt new file mode 100644 index 0000000..6bd4aee --- /dev/null +++ b/VOC/labels/train/06450.txt @@ -0,0 +1 @@ +1 0.23900000000000002 0.17837078651685392 0.23800000000000002 0.3455056179775281 diff --git a/VOC/labels/train/06460.txt b/VOC/labels/train/06460.txt new file mode 100644 index 0000000..9896a61 --- /dev/null +++ b/VOC/labels/train/06460.txt @@ -0,0 +1 @@ +1 0.565625 0.359375 0.171875 0.26458333333333334 diff --git a/VOC/labels/train/06470.txt b/VOC/labels/train/06470.txt new file mode 100644 index 0000000..47cd253 --- /dev/null +++ b/VOC/labels/train/06470.txt @@ -0,0 +1 @@ +1 0.57421875 0.276239907727797 0.291015625 0.3771626297577855 diff --git a/VOC/labels/train/06490.txt b/VOC/labels/train/06490.txt new file mode 100644 index 0000000..c49b3af --- /dev/null +++ b/VOC/labels/train/06490.txt @@ -0,0 +1,3 @@ +1 0.182 0.44266666666666665 0.12 0.21333333333333332 +1 0.435 0.41333333333333333 0.134 0.20266666666666666 +1 0.789 0.44 0.178 0.26666666666666666 diff --git a/VOC/labels/train/06500.txt b/VOC/labels/train/06500.txt new file mode 100644 index 0000000..f1c579a --- /dev/null +++ b/VOC/labels/train/06500.txt @@ -0,0 +1 @@ +1 0.46337890625 0.43908629441624364 0.3740234375 0.581218274111675 diff --git a/VOC/labels/val/0000.txt b/VOC/labels/val/0000.txt new file mode 100644 index 0000000..0c81a88 --- /dev/null +++ b/VOC/labels/val/0000.txt @@ -0,0 +1,2 @@ +30 0.253125 0.458333 0.127083 0.257407 +30 0.736979 0.475926 0.130208 0.166667 diff --git a/VOC/labels/val/00000.txt b/VOC/labels/val/00000.txt new file mode 100644 index 0000000..3dd783c --- /dev/null +++ b/VOC/labels/val/00000.txt @@ -0,0 +1 @@ +1 0.525 0.340625 0.16875 0.26875 diff --git a/VOC/labels/val/0001.txt b/VOC/labels/val/0001.txt new file mode 100644 index 0000000..d59ed4b --- /dev/null +++ b/VOC/labels/val/0001.txt @@ -0,0 +1 @@ +30 0.497917 0.462963 0.308333 0.744444 diff --git a/VOC/labels/val/00010.txt b/VOC/labels/val/00010.txt new file mode 100644 index 0000000..7559d42 --- /dev/null +++ b/VOC/labels/val/00010.txt @@ -0,0 +1,2 @@ +1 0.43994140625 0.1328125 0.1552734375 0.19921875 +1 0.62841796875 0.15234375 0.1337890625 0.1796875 diff --git a/VOC/labels/val/0003.txt b/VOC/labels/val/0003.txt new file mode 100644 index 0000000..9444020 --- /dev/null +++ b/VOC/labels/val/0003.txt @@ -0,0 +1 @@ +30 0.338542 0.358333 0.170833 0.312963 diff --git a/VOC/labels/val/00030.txt b/VOC/labels/val/00030.txt new file mode 100644 index 0000000..789131c --- /dev/null +++ b/VOC/labels/val/00030.txt @@ -0,0 +1,2 @@ +1 0.2509765625 0.19873046875 0.16796875 0.2158203125 +1 0.73193359375 0.16650390625 0.1474609375 0.1728515625 diff --git a/VOC/labels/val/0004.txt b/VOC/labels/val/0004.txt new file mode 100644 index 0000000..481e817 --- /dev/null +++ b/VOC/labels/val/0004.txt @@ -0,0 +1 @@ +30 0.496354 0.284259 0.184375 0.338889 diff --git a/VOC/labels/val/0006.txt b/VOC/labels/val/0006.txt new file mode 100644 index 0000000..b6ed1ff --- /dev/null +++ b/VOC/labels/val/0006.txt @@ -0,0 +1,2 @@ +30 0.269792 0.245370 0.145833 0.264815 +30 0.725000 0.431481 0.150000 0.248148 diff --git a/VOC/labels/val/00060.txt b/VOC/labels/val/00060.txt new file mode 100644 index 0000000..63d7698 --- /dev/null +++ b/VOC/labels/val/00060.txt @@ -0,0 +1 @@ +1 0.5671875000000001 0.43854166666666666 0.134375 0.20208333333333334 diff --git a/VOC/labels/val/0007.txt b/VOC/labels/val/0007.txt new file mode 100644 index 0000000..f28bf04 --- /dev/null +++ b/VOC/labels/val/0007.txt @@ -0,0 +1,10 @@ +30 0.207292 0.329630 0.045833 0.096296 +30 0.359375 0.294444 0.058333 0.107407 +30 0.486458 0.342593 0.031250 0.137037 +30 0.575000 0.390741 0.039583 0.137037 +30 0.657292 0.391667 0.070833 0.183333 +30 0.844792 0.496296 0.062500 0.122222 +30 0.627083 0.579630 0.043750 0.118519 +30 0.416667 0.540741 0.052083 0.066667 +30 0.263021 0.530556 0.059375 0.098148 +30 0.108854 0.441667 0.105208 0.238889 diff --git a/VOC/labels/val/00070.txt b/VOC/labels/val/00070.txt new file mode 100644 index 0000000..7998f68 --- /dev/null +++ b/VOC/labels/val/00070.txt @@ -0,0 +1 @@ +1 0.35029940119760483 0.135 0.16167664670658682 0.126 diff --git a/VOC/labels/val/0009.txt b/VOC/labels/val/0009.txt new file mode 100644 index 0000000..8eb7a0e --- /dev/null +++ b/VOC/labels/val/0009.txt @@ -0,0 +1 @@ +30 0.476042 0.392593 0.083333 0.170370 diff --git a/VOC/labels/val/0010.txt b/VOC/labels/val/0010.txt new file mode 100644 index 0000000..7f03def --- /dev/null +++ b/VOC/labels/val/0010.txt @@ -0,0 +1 @@ +30 0.505729 0.350000 0.188542 0.359259 diff --git a/VOC/labels/val/00100.txt b/VOC/labels/val/00100.txt new file mode 100644 index 0000000..7c55a6a --- /dev/null +++ b/VOC/labels/val/00100.txt @@ -0,0 +1 @@ +1 0.49462890625 0.30006835269993165 0.5498046875 0.42378673957621327 diff --git a/VOC/labels/val/00130.txt b/VOC/labels/val/00130.txt new file mode 100644 index 0000000..932cee4 --- /dev/null +++ b/VOC/labels/val/00130.txt @@ -0,0 +1 @@ +1 0.54345703125 0.3530864197530864 0.3466796875 0.5432098765432098 diff --git a/VOC/labels/val/0015.txt b/VOC/labels/val/0015.txt new file mode 100644 index 0000000..91cb1c1 --- /dev/null +++ b/VOC/labels/val/0015.txt @@ -0,0 +1 @@ +30 0.631771 0.274074 0.134375 0.288889 diff --git a/VOC/labels/val/0016.txt b/VOC/labels/val/0016.txt new file mode 100644 index 0000000..2c42ef2 --- /dev/null +++ b/VOC/labels/val/0016.txt @@ -0,0 +1 @@ +30 0.671875 0.362963 0.235417 0.388889 diff --git a/VOC/labels/val/0017.txt b/VOC/labels/val/0017.txt new file mode 100644 index 0000000..e33614b --- /dev/null +++ b/VOC/labels/val/0017.txt @@ -0,0 +1 @@ +30 0.325000 0.403704 0.145833 0.307407 diff --git a/VOC/labels/val/0018.txt b/VOC/labels/val/0018.txt new file mode 100644 index 0000000..180c0ca --- /dev/null +++ b/VOC/labels/val/0018.txt @@ -0,0 +1,2 @@ +30 0.342708 0.429630 0.125000 0.314815 +30 0.665625 0.500000 0.127083 0.337037 diff --git a/VOC/labels/val/0021.txt b/VOC/labels/val/0021.txt new file mode 100644 index 0000000..51de406 --- /dev/null +++ b/VOC/labels/val/0021.txt @@ -0,0 +1 @@ +30 0.358854 0.391667 0.232292 0.524074 diff --git a/VOC/labels/val/0023.txt b/VOC/labels/val/0023.txt new file mode 100644 index 0000000..c8bf255 --- /dev/null +++ b/VOC/labels/val/0023.txt @@ -0,0 +1 @@ +30 0.688021 0.378704 0.359375 0.568519 diff --git a/VOC/labels/val/0025.txt b/VOC/labels/val/0025.txt new file mode 100644 index 0000000..aaa1c1a --- /dev/null +++ b/VOC/labels/val/0025.txt @@ -0,0 +1 @@ +30 0.386458 0.476852 0.358333 0.642593 diff --git a/VOC/labels/val/0026.txt b/VOC/labels/val/0026.txt new file mode 100644 index 0000000..c4d86f9 --- /dev/null +++ b/VOC/labels/val/0026.txt @@ -0,0 +1 @@ +30 0.532813 0.350000 0.301042 0.440741 diff --git a/VOC/labels/val/0027.txt b/VOC/labels/val/0027.txt new file mode 100644 index 0000000..d39a4dd --- /dev/null +++ b/VOC/labels/val/0027.txt @@ -0,0 +1 @@ +30 0.477083 0.401852 0.250000 0.485185 diff --git a/VOC/labels/val/0029.txt b/VOC/labels/val/0029.txt new file mode 100644 index 0000000..7940576 --- /dev/null +++ b/VOC/labels/val/0029.txt @@ -0,0 +1 @@ +30 0.501563 0.483333 0.221875 0.477778 diff --git a/VOC/labels/val/0032.txt b/VOC/labels/val/0032.txt new file mode 100644 index 0000000..9738cdc --- /dev/null +++ b/VOC/labels/val/0032.txt @@ -0,0 +1 @@ +30 0.381771 0.199074 0.213542 0.327778 diff --git a/VOC/labels/val/0033.txt b/VOC/labels/val/0033.txt new file mode 100644 index 0000000..2080332 --- /dev/null +++ b/VOC/labels/val/0033.txt @@ -0,0 +1 @@ +30 0.739583 0.399074 0.177083 0.390741 diff --git a/VOC/labels/val/0034.txt b/VOC/labels/val/0034.txt new file mode 100644 index 0000000..90a75e6 --- /dev/null +++ b/VOC/labels/val/0034.txt @@ -0,0 +1 @@ +30 0.392188 0.349074 0.305208 0.446296 diff --git a/VOC/labels/val/0037.txt b/VOC/labels/val/0037.txt new file mode 100644 index 0000000..2c7ea8d --- /dev/null +++ b/VOC/labels/val/0037.txt @@ -0,0 +1 @@ +30 0.501563 0.408333 0.161458 0.312963 diff --git a/VOC/labels/val/0038.txt b/VOC/labels/val/0038.txt new file mode 100644 index 0000000..9827301 --- /dev/null +++ b/VOC/labels/val/0038.txt @@ -0,0 +1 @@ +30 0.391667 0.364815 0.408333 0.588889 diff --git a/VOC/labels/val/0039.txt b/VOC/labels/val/0039.txt new file mode 100644 index 0000000..dee5d12 --- /dev/null +++ b/VOC/labels/val/0039.txt @@ -0,0 +1 @@ +30 0.505729 0.407407 0.153125 0.314815 diff --git a/VOC/labels/val/0041.txt b/VOC/labels/val/0041.txt new file mode 100644 index 0000000..fbffa94 --- /dev/null +++ b/VOC/labels/val/0041.txt @@ -0,0 +1 @@ +30 0.481771 0.380556 0.136458 0.324074 diff --git a/VOC/labels/val/0042.txt b/VOC/labels/val/0042.txt new file mode 100644 index 0000000..c3d03c1 --- /dev/null +++ b/VOC/labels/val/0042.txt @@ -0,0 +1 @@ +30 0.673958 0.461111 0.318750 0.581481 diff --git a/VOC/labels/val/0045.txt b/VOC/labels/val/0045.txt new file mode 100644 index 0000000..6702084 --- /dev/null +++ b/VOC/labels/val/0045.txt @@ -0,0 +1 @@ +30 0.386979 0.537037 0.261458 0.637037 diff --git a/VOC/labels/val/0047.txt b/VOC/labels/val/0047.txt new file mode 100644 index 0000000..022e68c --- /dev/null +++ b/VOC/labels/val/0047.txt @@ -0,0 +1 @@ +30 0.397917 0.335185 0.235417 0.511111 diff --git a/VOC/labels/val/0051.txt b/VOC/labels/val/0051.txt new file mode 100644 index 0000000..55b376c --- /dev/null +++ b/VOC/labels/val/0051.txt @@ -0,0 +1 @@ +30 0.269271 0.328704 0.290625 0.594444 diff --git a/VOC/labels/val/0054.txt b/VOC/labels/val/0054.txt new file mode 100644 index 0000000..98342d2 --- /dev/null +++ b/VOC/labels/val/0054.txt @@ -0,0 +1 @@ +30 0.536458 0.290741 0.145833 0.244444 diff --git a/VOC/labels/val/00550.txt b/VOC/labels/val/00550.txt new file mode 100644 index 0000000..1d4ef97 --- /dev/null +++ b/VOC/labels/val/00550.txt @@ -0,0 +1 @@ +1 0.5619791666666667 0.3314814814814815 0.146875 0.3740740740740741 diff --git a/VOC/labels/val/00570.txt b/VOC/labels/val/00570.txt new file mode 100644 index 0000000..8a8f1f1 --- /dev/null +++ b/VOC/labels/val/00570.txt @@ -0,0 +1,2 @@ +1 0.5133333333333333 0.157 0.14666666666666667 0.17400000000000002 +1 0.108 0.216 0.184 0.192 diff --git a/VOC/labels/val/0058.txt b/VOC/labels/val/0058.txt new file mode 100644 index 0000000..7134c86 --- /dev/null +++ b/VOC/labels/val/0058.txt @@ -0,0 +1 @@ +30 0.609375 0.329630 0.170833 0.433333 diff --git a/VOC/labels/val/0059.txt b/VOC/labels/val/0059.txt new file mode 100644 index 0000000..5ab5a44 --- /dev/null +++ b/VOC/labels/val/0059.txt @@ -0,0 +1 @@ +30 0.475000 0.375926 0.325000 0.537037 diff --git a/VOC/labels/val/00590.txt b/VOC/labels/val/00590.txt new file mode 100644 index 0000000..60616ae --- /dev/null +++ b/VOC/labels/val/00590.txt @@ -0,0 +1,3 @@ +1 0.171875 0.40299479166666663 0.09375 0.14713541666666666 +1 0.48193359375 0.4016927083333333 0.1064453125 0.16796875 +1 0.8759765625 0.3997395833333333 0.091796875 0.1640625 diff --git a/VOC/labels/val/0060.txt b/VOC/labels/val/0060.txt new file mode 100644 index 0000000..17a5ba2 --- /dev/null +++ b/VOC/labels/val/0060.txt @@ -0,0 +1 @@ +30 0.559896 0.280556 0.142708 0.201852 diff --git a/VOC/labels/val/00600.txt b/VOC/labels/val/00600.txt new file mode 100644 index 0000000..1355c97 --- /dev/null +++ b/VOC/labels/val/00600.txt @@ -0,0 +1 @@ +1 0.390625 0.1998535871156662 0.150390625 0.30014641288433386 diff --git a/VOC/labels/val/00620.txt b/VOC/labels/val/00620.txt new file mode 100644 index 0000000..ca47b50 --- /dev/null +++ b/VOC/labels/val/00620.txt @@ -0,0 +1,2 @@ +1 0.47705078125 0.1987597911227154 0.1962890625 0.16906005221932116 +1 0.78857421875 0.3064621409921671 0.2216796875 0.17819843342036554 diff --git a/VOC/labels/val/0064.txt b/VOC/labels/val/0064.txt new file mode 100644 index 0000000..41ca91c --- /dev/null +++ b/VOC/labels/val/0064.txt @@ -0,0 +1 @@ +30 0.471354 0.506481 0.321875 0.624074 diff --git a/VOC/labels/val/00640.txt b/VOC/labels/val/00640.txt new file mode 100644 index 0000000..0c60e0c --- /dev/null +++ b/VOC/labels/val/00640.txt @@ -0,0 +1 @@ +1 0.5859375 0.306640625 0.12890625 0.22786458333333331 diff --git a/VOC/labels/val/0065.txt b/VOC/labels/val/0065.txt new file mode 100644 index 0000000..1112c52 --- /dev/null +++ b/VOC/labels/val/0065.txt @@ -0,0 +1 @@ +30 0.396875 0.355556 0.275000 0.481481 diff --git a/VOC/labels/val/00660.txt b/VOC/labels/val/00660.txt new file mode 100644 index 0000000..147e16e --- /dev/null +++ b/VOC/labels/val/00660.txt @@ -0,0 +1 @@ +1 0.44970703125 0.3845486111111111 0.2333984375 0.564236111111111 diff --git a/VOC/labels/val/0067.txt b/VOC/labels/val/0067.txt new file mode 100644 index 0000000..8c5bf99 --- /dev/null +++ b/VOC/labels/val/0067.txt @@ -0,0 +1 @@ +30 0.480729 0.387037 0.276042 0.529630 diff --git a/VOC/labels/val/0069.txt b/VOC/labels/val/0069.txt new file mode 100644 index 0000000..16fc53a --- /dev/null +++ b/VOC/labels/val/0069.txt @@ -0,0 +1 @@ +30 0.483854 0.229630 0.209375 0.296296 diff --git a/VOC/labels/val/00690.txt b/VOC/labels/val/00690.txt new file mode 100644 index 0000000..2253178 --- /dev/null +++ b/VOC/labels/val/00690.txt @@ -0,0 +1 @@ +1 0.44091796875 0.39498580889309365 0.3623046875 0.38505203405865657 diff --git a/VOC/labels/val/00700.txt b/VOC/labels/val/00700.txt new file mode 100644 index 0000000..ea86a22 --- /dev/null +++ b/VOC/labels/val/00700.txt @@ -0,0 +1 @@ +1 0.5281250000000001 0.5020833333333333 0.20625000000000002 0.2916666666666667 diff --git a/VOC/labels/val/0071.txt b/VOC/labels/val/0071.txt new file mode 100644 index 0000000..89176eb --- /dev/null +++ b/VOC/labels/val/0071.txt @@ -0,0 +1,2 @@ +30 0.451562 0.506481 0.346875 0.646296 +30 0.883854 0.628704 0.138542 0.242593 diff --git a/VOC/labels/val/00710.txt b/VOC/labels/val/00710.txt new file mode 100644 index 0000000..c0c221c --- /dev/null +++ b/VOC/labels/val/00710.txt @@ -0,0 +1 @@ +1 0.47314453125 0.2821180555555555 0.1611328125 0.4253472222222222 diff --git a/VOC/labels/val/0073.txt b/VOC/labels/val/0073.txt new file mode 100644 index 0000000..9fb41f3 --- /dev/null +++ b/VOC/labels/val/0073.txt @@ -0,0 +1,2 @@ +30 0.345833 0.311111 0.220833 0.359259 +30 0.698438 0.347222 0.119792 0.253704 diff --git a/VOC/labels/val/00730.txt b/VOC/labels/val/00730.txt new file mode 100644 index 0000000..4152198 --- /dev/null +++ b/VOC/labels/val/00730.txt @@ -0,0 +1 @@ +1 0.3759765625 0.35836385836385837 0.453125 0.6776556776556777 diff --git a/VOC/labels/val/00740.txt b/VOC/labels/val/00740.txt new file mode 100644 index 0000000..c66ffce --- /dev/null +++ b/VOC/labels/val/00740.txt @@ -0,0 +1,3 @@ +1 0.23779296875 0.2764945652173913 0.1552734375 0.2703804347826087 +1 0.77734375 0.18138586956521738 0.1875 0.3138586956521739 +1 0.4921875 0.38926630434782605 0.083984375 0.13994565217391303 diff --git a/VOC/labels/val/0075.txt b/VOC/labels/val/0075.txt new file mode 100644 index 0000000..b958e34 --- /dev/null +++ b/VOC/labels/val/0075.txt @@ -0,0 +1 @@ +30 0.440625 0.426852 0.222917 0.498148 diff --git a/VOC/labels/val/0076.txt b/VOC/labels/val/0076.txt new file mode 100644 index 0000000..6091905 --- /dev/null +++ b/VOC/labels/val/0076.txt @@ -0,0 +1 @@ +30 0.630729 0.370370 0.211458 0.525926 diff --git a/VOC/labels/val/0078.txt b/VOC/labels/val/0078.txt new file mode 100644 index 0000000..7e89297 --- /dev/null +++ b/VOC/labels/val/0078.txt @@ -0,0 +1 @@ +30 0.519271 0.511111 0.273958 0.637037 diff --git a/VOC/labels/val/00780.txt b/VOC/labels/val/00780.txt new file mode 100644 index 0000000..f119175 --- /dev/null +++ b/VOC/labels/val/00780.txt @@ -0,0 +1 @@ +1 0.52890625 0.35104166666666664 0.1765625 0.2604166666666667 diff --git a/VOC/labels/val/0081.txt b/VOC/labels/val/0081.txt new file mode 100644 index 0000000..ce5533d --- /dev/null +++ b/VOC/labels/val/0081.txt @@ -0,0 +1 @@ +30 0.413021 0.431481 0.230208 0.488889 diff --git a/VOC/labels/val/00820.txt b/VOC/labels/val/00820.txt new file mode 100644 index 0000000..929c5a9 --- /dev/null +++ b/VOC/labels/val/00820.txt @@ -0,0 +1 @@ +1 0.28933333333333333 0.318 0.3173333333333333 0.28800000000000003 diff --git a/VOC/labels/val/0083.txt b/VOC/labels/val/0083.txt new file mode 100644 index 0000000..50775bc --- /dev/null +++ b/VOC/labels/val/0083.txt @@ -0,0 +1 @@ +30 0.470833 0.193519 0.141667 0.238889 diff --git a/VOC/labels/val/0084.txt b/VOC/labels/val/0084.txt new file mode 100644 index 0000000..a51cea4 --- /dev/null +++ b/VOC/labels/val/0084.txt @@ -0,0 +1 @@ +30 0.338542 0.346296 0.145833 0.255556 diff --git a/VOC/labels/val/00850.txt b/VOC/labels/val/00850.txt new file mode 100644 index 0000000..56bb551 --- /dev/null +++ b/VOC/labels/val/00850.txt @@ -0,0 +1 @@ +1 0.486328125 0.2629310344827586 0.693359375 0.5100574712643678 diff --git a/VOC/labels/val/0086.txt b/VOC/labels/val/0086.txt new file mode 100644 index 0000000..18f4b17 --- /dev/null +++ b/VOC/labels/val/0086.txt @@ -0,0 +1,2 @@ +30 0.330208 0.333333 0.254167 0.507407 +30 0.723437 0.547222 0.155208 0.420370 diff --git a/VOC/labels/val/00860.txt b/VOC/labels/val/00860.txt new file mode 100644 index 0000000..9946114 --- /dev/null +++ b/VOC/labels/val/00860.txt @@ -0,0 +1,3 @@ +1 0.2451171875 0.28306092124814264 0.13671875 0.27191679049034173 +1 0.45068359375 0.17830609212481424 0.1396484375 0.2852897473997028 +1 0.8173828125 0.25854383358098065 0.13671875 0.23179791976225853 diff --git a/VOC/labels/val/0092.txt b/VOC/labels/val/0092.txt new file mode 100644 index 0000000..50b8ce6 --- /dev/null +++ b/VOC/labels/val/0092.txt @@ -0,0 +1 @@ +30 0.504687 0.407407 0.261458 0.633333 diff --git a/VOC/labels/val/00920.txt b/VOC/labels/val/00920.txt new file mode 100644 index 0000000..02719a6 --- /dev/null +++ b/VOC/labels/val/00920.txt @@ -0,0 +1 @@ +1 0.5921875 0.390625 0.20625000000000002 0.2895833333333333 diff --git a/VOC/labels/val/0093.txt b/VOC/labels/val/0093.txt new file mode 100644 index 0000000..9d7b2ad --- /dev/null +++ b/VOC/labels/val/0093.txt @@ -0,0 +1 @@ +30 0.517708 0.425000 0.268750 0.612963 diff --git a/VOC/labels/val/00940.txt b/VOC/labels/val/00940.txt new file mode 100644 index 0000000..4d04d51 --- /dev/null +++ b/VOC/labels/val/00940.txt @@ -0,0 +1 @@ +1 0.361328125 0.38037109375 0.171875 0.2333984375 diff --git a/VOC/labels/val/00960.txt b/VOC/labels/val/00960.txt new file mode 100644 index 0000000..ee2cfbd --- /dev/null +++ b/VOC/labels/val/00960.txt @@ -0,0 +1 @@ +1 0.42431640625 0.16094210009813542 0.2021484375 0.26300294406280667 diff --git a/VOC/labels/val/00970.txt b/VOC/labels/val/00970.txt new file mode 100644 index 0000000..45666e9 --- /dev/null +++ b/VOC/labels/val/00970.txt @@ -0,0 +1 @@ +1 0.5171875 0.4 0.178125 0.29583333333333334 diff --git a/VOC/labels/val/0098.txt b/VOC/labels/val/0098.txt new file mode 100644 index 0000000..f241783 --- /dev/null +++ b/VOC/labels/val/0098.txt @@ -0,0 +1,4 @@ +30 0.507812 0.406481 0.123958 0.268519 +30 0.292187 0.280556 0.128125 0.250000 +30 0.845833 0.255556 0.191667 0.355556 +30 0.079687 0.450000 0.144792 0.422222 diff --git a/VOC/labels/val/00990.txt b/VOC/labels/val/00990.txt new file mode 100644 index 0000000..ae15c6a --- /dev/null +++ b/VOC/labels/val/00990.txt @@ -0,0 +1 @@ +1 0.6103515625 0.567938021454112 0.275390625 0.5089392133492252 diff --git a/VOC/labels/val/01000.txt b/VOC/labels/val/01000.txt new file mode 100644 index 0000000..359740b --- /dev/null +++ b/VOC/labels/val/01000.txt @@ -0,0 +1 @@ +1 0.6218750000000001 0.4197916666666667 0.17500000000000002 0.26875 diff --git a/VOC/labels/val/0101.txt b/VOC/labels/val/0101.txt new file mode 100644 index 0000000..51cf3ad --- /dev/null +++ b/VOC/labels/val/0101.txt @@ -0,0 +1 @@ +30 0.453125 0.321296 0.141667 0.253704 diff --git a/VOC/labels/val/01020.txt b/VOC/labels/val/01020.txt new file mode 100644 index 0000000..fa48d2b --- /dev/null +++ b/VOC/labels/val/01020.txt @@ -0,0 +1,2 @@ +1 0.3098958333333333 0.47222222222222227 0.11354166666666667 0.23703703703703705 +1 0.6052083333333333 0.4287037037037037 0.13333333333333333 0.29814814814814816 diff --git a/VOC/labels/val/01030.txt b/VOC/labels/val/01030.txt new file mode 100644 index 0000000..0086c39 --- /dev/null +++ b/VOC/labels/val/01030.txt @@ -0,0 +1 @@ +1 0.52109375 0.38125 0.15781250000000002 0.2625 diff --git a/VOC/labels/val/01040.txt b/VOC/labels/val/01040.txt new file mode 100644 index 0000000..b2181c6 --- /dev/null +++ b/VOC/labels/val/01040.txt @@ -0,0 +1 @@ +1 0.5265625 0.3375 0.14375000000000002 0.22916666666666666 diff --git a/VOC/labels/val/01050.txt b/VOC/labels/val/01050.txt new file mode 100644 index 0000000..f7d6481 --- /dev/null +++ b/VOC/labels/val/01050.txt @@ -0,0 +1 @@ +1 0.46640625 0.3958333333333333 0.2390625 0.4083333333333333 diff --git a/VOC/labels/val/01060.txt b/VOC/labels/val/01060.txt new file mode 100644 index 0000000..0fb68ef --- /dev/null +++ b/VOC/labels/val/01060.txt @@ -0,0 +1 @@ +1 0.5859375 0.44687499999999997 0.209375 0.34375 diff --git a/VOC/labels/val/0107.txt b/VOC/labels/val/0107.txt new file mode 100644 index 0000000..8da44e5 --- /dev/null +++ b/VOC/labels/val/0107.txt @@ -0,0 +1 @@ +30 0.371875 0.366667 0.220833 0.470370 diff --git a/VOC/labels/val/01070.txt b/VOC/labels/val/01070.txt new file mode 100644 index 0000000..65c54ac --- /dev/null +++ b/VOC/labels/val/01070.txt @@ -0,0 +1 @@ +1 0.52734375 0.45729166666666665 0.1453125 0.22708333333333333 diff --git a/VOC/labels/val/0108.txt b/VOC/labels/val/0108.txt new file mode 100644 index 0000000..487b95a --- /dev/null +++ b/VOC/labels/val/0108.txt @@ -0,0 +1,2 @@ +30 0.428125 0.437963 0.297917 0.572222 +30 0.808854 0.712963 0.144792 0.344444 diff --git a/VOC/labels/val/01080.txt b/VOC/labels/val/01080.txt new file mode 100644 index 0000000..2cee272 --- /dev/null +++ b/VOC/labels/val/01080.txt @@ -0,0 +1 @@ +1 0.6666666666666666 0.28500000000000003 0.23466666666666666 0.21 diff --git a/VOC/labels/val/0109.txt b/VOC/labels/val/0109.txt new file mode 100644 index 0000000..d1220ac --- /dev/null +++ b/VOC/labels/val/0109.txt @@ -0,0 +1 @@ +30 0.515625 0.384259 0.277083 0.461111 diff --git a/VOC/labels/val/0110.txt b/VOC/labels/val/0110.txt new file mode 100644 index 0000000..f74283d --- /dev/null +++ b/VOC/labels/val/0110.txt @@ -0,0 +1 @@ +30 0.250521 0.414815 0.157292 0.440741 diff --git a/VOC/labels/val/0112.txt b/VOC/labels/val/0112.txt new file mode 100644 index 0000000..8e0beaa --- /dev/null +++ b/VOC/labels/val/0112.txt @@ -0,0 +1 @@ +30 0.536458 0.332407 0.143750 0.364815 diff --git a/VOC/labels/val/01120.txt b/VOC/labels/val/01120.txt new file mode 100644 index 0000000..cc54e38 --- /dev/null +++ b/VOC/labels/val/01120.txt @@ -0,0 +1 @@ +1 0.52578125 0.378125 0.1703125 0.29791666666666666 diff --git a/VOC/labels/val/0113.txt b/VOC/labels/val/0113.txt new file mode 100644 index 0000000..8a13d91 --- /dev/null +++ b/VOC/labels/val/0113.txt @@ -0,0 +1 @@ +30 0.396875 0.440741 0.252083 0.500000 diff --git a/VOC/labels/val/0114.txt b/VOC/labels/val/0114.txt new file mode 100644 index 0000000..fdd4e66 --- /dev/null +++ b/VOC/labels/val/0114.txt @@ -0,0 +1 @@ +30 0.560937 0.390741 0.236458 0.292593 diff --git a/VOC/labels/val/01150.txt b/VOC/labels/val/01150.txt new file mode 100644 index 0000000..933bd70 --- /dev/null +++ b/VOC/labels/val/01150.txt @@ -0,0 +1 @@ +1 0.151 0.4005376344086022 0.298 0.4731182795698925 diff --git a/VOC/labels/val/0116.txt b/VOC/labels/val/0116.txt new file mode 100644 index 0000000..2f08872 --- /dev/null +++ b/VOC/labels/val/0116.txt @@ -0,0 +1 @@ +30 0.369792 0.427778 0.314583 0.529630 diff --git a/VOC/labels/val/01160.txt b/VOC/labels/val/01160.txt new file mode 100644 index 0000000..79de02f --- /dev/null +++ b/VOC/labels/val/01160.txt @@ -0,0 +1 @@ +1 0.5359375000000001 0.4458333333333333 0.2 0.30833333333333335 diff --git a/VOC/labels/val/01170.txt b/VOC/labels/val/01170.txt new file mode 100644 index 0000000..adb39f3 --- /dev/null +++ b/VOC/labels/val/01170.txt @@ -0,0 +1 @@ +1 0.44453125000000004 0.32916666666666666 0.2421875 0.37083333333333335 diff --git a/VOC/labels/val/01200.txt b/VOC/labels/val/01200.txt new file mode 100644 index 0000000..9b562a6 --- /dev/null +++ b/VOC/labels/val/01200.txt @@ -0,0 +1 @@ +1 0.5328125 0.4479166666666667 0.16562500000000002 0.26666666666666666 diff --git a/VOC/labels/val/0121.txt b/VOC/labels/val/0121.txt new file mode 100644 index 0000000..8103561 --- /dev/null +++ b/VOC/labels/val/0121.txt @@ -0,0 +1 @@ +30 0.424479 0.405556 0.255208 0.455556 diff --git a/VOC/labels/val/01220.txt b/VOC/labels/val/01220.txt new file mode 100644 index 0000000..4362a03 --- /dev/null +++ b/VOC/labels/val/01220.txt @@ -0,0 +1 @@ +1 0.35107421875 0.23828920570264764 0.2763671875 0.3869653767820774 diff --git a/yolov5/model_utils/__init__.py b/VOC/labels/val/0124.txt similarity index 100% rename from yolov5/model_utils/__init__.py rename to VOC/labels/val/0124.txt diff --git a/VOC/labels/val/0125.txt b/VOC/labels/val/0125.txt new file mode 100644 index 0000000..7fbbfa1 --- /dev/null +++ b/VOC/labels/val/0125.txt @@ -0,0 +1 @@ +30 0.516667 0.457407 0.229167 0.403704 diff --git a/VOC/labels/val/0126.txt b/VOC/labels/val/0126.txt new file mode 100644 index 0000000..829d62a --- /dev/null +++ b/VOC/labels/val/0126.txt @@ -0,0 +1 @@ +30 0.432812 0.274074 0.307292 0.366667 diff --git a/VOC/labels/val/01260.txt b/VOC/labels/val/01260.txt new file mode 100644 index 0000000..c2746e7 --- /dev/null +++ b/VOC/labels/val/01260.txt @@ -0,0 +1,2 @@ +1 0.42236328125 0.287568306010929 0.2314453125 0.4412568306010929 +1 0.70166015625 0.29713114754098363 0.2275390625 0.4166666666666667 diff --git a/VOC/labels/val/0127.txt b/VOC/labels/val/0127.txt new file mode 100644 index 0000000..0549206 --- /dev/null +++ b/VOC/labels/val/0127.txt @@ -0,0 +1 @@ +30 0.471875 0.336111 0.125000 0.298148 diff --git a/VOC/labels/val/0128.txt b/VOC/labels/val/0128.txt new file mode 100644 index 0000000..6d99765 --- /dev/null +++ b/VOC/labels/val/0128.txt @@ -0,0 +1 @@ +30 0.354167 0.331481 0.156250 0.207407 diff --git a/VOC/labels/val/01310.txt b/VOC/labels/val/01310.txt new file mode 100644 index 0000000..625bd26 --- /dev/null +++ b/VOC/labels/val/01310.txt @@ -0,0 +1 @@ +1 0.5085937500000001 0.39166666666666666 0.21406250000000002 0.3458333333333333 diff --git a/VOC/labels/val/01330.txt b/VOC/labels/val/01330.txt new file mode 100644 index 0000000..3fbefa5 --- /dev/null +++ b/VOC/labels/val/01330.txt @@ -0,0 +1 @@ +1 0.515625 0.37028608582574774 0.56640625 0.48439531859557866 diff --git a/VOC/labels/val/01350.txt b/VOC/labels/val/01350.txt new file mode 100644 index 0000000..885258c --- /dev/null +++ b/VOC/labels/val/01350.txt @@ -0,0 +1 @@ +1 0.52197265625 0.27994791666666663 0.4755859375 0.4114583333333333 diff --git a/VOC/labels/val/01360.txt b/VOC/labels/val/01360.txt new file mode 100644 index 0000000..8eae269 --- /dev/null +++ b/VOC/labels/val/01360.txt @@ -0,0 +1 @@ +1 0.5242187500000001 0.38125 0.15156250000000002 0.23333333333333334 diff --git a/VOC/labels/val/01380.txt b/VOC/labels/val/01380.txt new file mode 100644 index 0000000..5ec3595 --- /dev/null +++ b/VOC/labels/val/01380.txt @@ -0,0 +1 @@ +1 0.5068359375 0.27956204379562044 0.416015625 0.41751824817518246 diff --git a/VOC/labels/val/01400.txt b/VOC/labels/val/01400.txt new file mode 100644 index 0000000..bc62e59 --- /dev/null +++ b/VOC/labels/val/01400.txt @@ -0,0 +1,2 @@ +1 0.4453125 0.1847051198963059 0.1328125 0.10628645495787427 +1 0.84033203125 0.19215813350615685 0.1318359375 0.11082307193778354 diff --git a/VOC/labels/val/01410.txt b/VOC/labels/val/01410.txt new file mode 100644 index 0000000..cbe04fb --- /dev/null +++ b/VOC/labels/val/01410.txt @@ -0,0 +1 @@ +1 0.48876953125 0.10702199661590524 0.1787109375 0.18358714043993232 diff --git a/VOC/labels/val/01420.txt b/VOC/labels/val/01420.txt new file mode 100644 index 0000000..64c90e3 --- /dev/null +++ b/VOC/labels/val/01420.txt @@ -0,0 +1 @@ +1 0.401 0.492 0.294 0.48266666666666663 diff --git a/VOC/labels/val/01450.txt b/VOC/labels/val/01450.txt new file mode 100644 index 0000000..971f06f --- /dev/null +++ b/VOC/labels/val/01450.txt @@ -0,0 +1 @@ +1 0.5484375 0.403125 0.146875 0.22291666666666665 diff --git a/VOC/labels/val/01460.txt b/VOC/labels/val/01460.txt new file mode 100644 index 0000000..65c8869 --- /dev/null +++ b/VOC/labels/val/01460.txt @@ -0,0 +1,5 @@ +1 0.2509765625 0.18899204244031828 0.1171875 0.22148541114058354 +1 0.35595703125 0.2964190981432361 0.1064453125 0.19496021220159152 +1 0.474609375 0.24403183023872677 0.072265625 0.1909814323607427 +1 0.5556640625 0.3149867374005305 0.076171875 0.15517241379310345 +1 0.65234375 0.2679045092838196 0.083984375 0.18037135278514588 diff --git a/VOC/labels/val/01470.txt b/VOC/labels/val/01470.txt new file mode 100644 index 0000000..c07873b --- /dev/null +++ b/VOC/labels/val/01470.txt @@ -0,0 +1 @@ +1 0.5146484375 0.25830078125 0.373046875 0.4873046875 diff --git a/VOC/labels/val/01500.txt b/VOC/labels/val/01500.txt new file mode 100644 index 0000000..ad2b5f2 --- /dev/null +++ b/VOC/labels/val/01500.txt @@ -0,0 +1 @@ +1 0.498046875 0.3026315789473684 0.462890625 0.45951417004048584 diff --git a/VOC/labels/val/01530.txt b/VOC/labels/val/01530.txt new file mode 100644 index 0000000..92cfed9 --- /dev/null +++ b/VOC/labels/val/01530.txt @@ -0,0 +1,2 @@ +1 0.225 0.2533333333333333 0.134 0.21333333333333332 +1 0.628 0.216 0.124 0.208 diff --git a/VOC/labels/val/01550.txt b/VOC/labels/val/01550.txt new file mode 100644 index 0000000..9c3e32d --- /dev/null +++ b/VOC/labels/val/01550.txt @@ -0,0 +1 @@ +1 0.49375 0.421875 0.22187500000000002 0.33541666666666664 diff --git a/VOC/labels/val/01560.txt b/VOC/labels/val/01560.txt new file mode 100644 index 0000000..1b24441 --- /dev/null +++ b/VOC/labels/val/01560.txt @@ -0,0 +1 @@ +1 0.4697265625 0.18570402298850575 0.236328125 0.23922413793103448 diff --git a/VOC/labels/val/01580.txt b/VOC/labels/val/01580.txt new file mode 100644 index 0000000..ac7c551 --- /dev/null +++ b/VOC/labels/val/01580.txt @@ -0,0 +1,3 @@ +1 0.4951171875 0.4216691068814056 0.04296875 0.06734992679355783 +1 0.63525390625 0.40995607613469986 0.0498046875 0.07027818448023426 +1 0.7431640625 0.4150805270863836 0.037109375 0.06881405563689605 diff --git a/VOC/labels/val/01590.txt b/VOC/labels/val/01590.txt new file mode 100644 index 0000000..1f1516b --- /dev/null +++ b/VOC/labels/val/01590.txt @@ -0,0 +1 @@ +1 0.38525390625 0.45492957746478874 0.3408203125 0.6929577464788733 diff --git a/VOC/labels/val/01610.txt b/VOC/labels/val/01610.txt new file mode 100644 index 0000000..473f361 --- /dev/null +++ b/VOC/labels/val/01610.txt @@ -0,0 +1 @@ +1 0.4033203125 0.48046875 0.654296875 0.9401041666666666 diff --git a/VOC/labels/val/01620.txt b/VOC/labels/val/01620.txt new file mode 100644 index 0000000..3f7101d --- /dev/null +++ b/VOC/labels/val/01620.txt @@ -0,0 +1,2 @@ +1 0.353515625 0.30781250000000004 0.123046875 0.290625 +1 0.5341796875 0.18828125 0.13671875 0.2765625 diff --git a/VOC/labels/val/01630.txt b/VOC/labels/val/01630.txt new file mode 100644 index 0000000..5a6e8e9 --- /dev/null +++ b/VOC/labels/val/01630.txt @@ -0,0 +1,4 @@ +1 0.18115234375 0.08409279204639603 0.1279296875 0.1168185584092792 +1 0.40283203125 0.1992543496271748 0.0986328125 0.11184755592377796 +1 0.576171875 0.19552609776304888 0.115234375 0.1060480530240265 +1 0.83154296875 0.1512013256006628 0.1162109375 0.1168185584092792 diff --git a/VOC/labels/val/01640.txt b/VOC/labels/val/01640.txt new file mode 100644 index 0000000..b7a5d3c --- /dev/null +++ b/VOC/labels/val/01640.txt @@ -0,0 +1,7 @@ +1 0.10888671875 0.18281938325991187 0.0908203125 0.16005873715124816 +1 0.255859375 0.2533039647577092 0.072265625 0.1277533039647577 +1 0.3720703125 0.29148311306901614 0.087890625 0.15418502202643172 +1 0.4775390625 0.1872246696035242 0.0703125 0.13656387665198236 +1 0.568359375 0.2834067547723935 0.0859375 0.16740088105726872 +1 0.71142578125 0.2731277533039647 0.0869140625 0.15859030837004404 +1 0.87158203125 0.2408223201174743 0.0888671875 0.17621145374449337 diff --git a/VOC/labels/val/01650.txt b/VOC/labels/val/01650.txt new file mode 100644 index 0000000..f928c82 --- /dev/null +++ b/VOC/labels/val/01650.txt @@ -0,0 +1,2 @@ +1 0.37744140625 0.21435546875 0.1298828125 0.1884765625 +1 0.62109375 0.1376953125 0.16015625 0.19140625 diff --git a/VOC/labels/val/01660.txt b/VOC/labels/val/01660.txt new file mode 100644 index 0000000..5f96b36 --- /dev/null +++ b/VOC/labels/val/01660.txt @@ -0,0 +1,3 @@ +1 0.309375 0.4712962962962963 0.10416666666666667 0.21296296296296297 +1 0.6135416666666667 0.47314814814814815 0.1125 0.2537037037037037 +1 0.8645833333333334 0.3074074074074074 0.15625 0.40370370370370373 diff --git a/VOC/labels/val/01670.txt b/VOC/labels/val/01670.txt new file mode 100644 index 0000000..7bb2ef5 --- /dev/null +++ b/VOC/labels/val/01670.txt @@ -0,0 +1 @@ +1 0.5421875 0.45729166666666665 0.1875 0.28125 diff --git a/VOC/labels/val/01680.txt b/VOC/labels/val/01680.txt new file mode 100644 index 0000000..9bec134 --- /dev/null +++ b/VOC/labels/val/01680.txt @@ -0,0 +1 @@ +1 0.48020833333333335 0.4314814814814815 0.1375 0.34444444444444444 diff --git a/VOC/labels/val/01690.txt b/VOC/labels/val/01690.txt new file mode 100644 index 0000000..a7378f9 --- /dev/null +++ b/VOC/labels/val/01690.txt @@ -0,0 +1 @@ +1 0.6171875 0.328125 0.1875 0.26875 diff --git a/VOC/labels/val/01700.txt b/VOC/labels/val/01700.txt new file mode 100644 index 0000000..0b20dd6 --- /dev/null +++ b/VOC/labels/val/01700.txt @@ -0,0 +1,4 @@ +1 0.30322265625 0.12007042253521127 0.1494140625 0.12464788732394366 +1 0.6220703125 0.11338028169014085 0.138671875 0.12112676056338029 +1 0.84716796875 0.09577464788732395 0.0732421875 0.056338028169014086 +1 0.1064453125 0.11408450704225352 0.06640625 0.04084507042253521 diff --git a/VOC/labels/val/01710.txt b/VOC/labels/val/01710.txt new file mode 100644 index 0000000..59eb1e8 --- /dev/null +++ b/VOC/labels/val/01710.txt @@ -0,0 +1 @@ +1 0.47119140625 0.16699029126213594 0.2548828125 0.2174757281553398 diff --git a/VOC/labels/val/01730.txt b/VOC/labels/val/01730.txt new file mode 100644 index 0000000..f99a701 --- /dev/null +++ b/VOC/labels/val/01730.txt @@ -0,0 +1 @@ +1 0.49843750000000003 0.5177083333333333 0.15937500000000002 0.23541666666666666 diff --git a/VOC/labels/val/01740.txt b/VOC/labels/val/01740.txt new file mode 100644 index 0000000..7776272 --- /dev/null +++ b/VOC/labels/val/01740.txt @@ -0,0 +1 @@ +1 0.545 0.3780120481927711 0.166 0.3102409638554217 diff --git a/VOC/labels/val/01760.txt b/VOC/labels/val/01760.txt new file mode 100644 index 0000000..9aaf658 --- /dev/null +++ b/VOC/labels/val/01760.txt @@ -0,0 +1 @@ +1 0.49267578125 0.36041009463722395 0.2333984375 0.5347003154574133 diff --git a/VOC/labels/val/01770.txt b/VOC/labels/val/01770.txt new file mode 100644 index 0000000..c590d04 --- /dev/null +++ b/VOC/labels/val/01770.txt @@ -0,0 +1 @@ +1 0.67 0.09009009009009009 0.10400000000000001 0.15615615615615616 diff --git a/VOC/labels/val/01780.txt b/VOC/labels/val/01780.txt new file mode 100644 index 0000000..c800afc --- /dev/null +++ b/VOC/labels/val/01780.txt @@ -0,0 +1 @@ +1 0.388671875 0.39013671875 0.439453125 0.5517578125 diff --git a/VOC/labels/val/01800.txt b/VOC/labels/val/01800.txt new file mode 100644 index 0000000..b295e3c --- /dev/null +++ b/VOC/labels/val/01800.txt @@ -0,0 +1 @@ +1 0.49267578125 0.26758204956463494 0.4326171875 0.3904889484259879 diff --git a/VOC/labels/val/01870.txt b/VOC/labels/val/01870.txt new file mode 100644 index 0000000..edcd10f --- /dev/null +++ b/VOC/labels/val/01870.txt @@ -0,0 +1 @@ +1 0.56015625 0.40729166666666666 0.16718750000000002 0.25625 diff --git a/VOC/labels/val/01890.txt b/VOC/labels/val/01890.txt new file mode 100644 index 0000000..537da50 --- /dev/null +++ b/VOC/labels/val/01890.txt @@ -0,0 +1 @@ +1 0.2861328125 0.41594454072790293 0.2109375 0.537261698440208 diff --git a/VOC/labels/val/01900.txt b/VOC/labels/val/01900.txt new file mode 100644 index 0000000..445ff2b --- /dev/null +++ b/VOC/labels/val/01900.txt @@ -0,0 +1 @@ +1 0.56796875 0.3989583333333333 0.19843750000000002 0.29375 diff --git a/VOC/labels/val/01910.txt b/VOC/labels/val/01910.txt new file mode 100644 index 0000000..0eab4be --- /dev/null +++ b/VOC/labels/val/01910.txt @@ -0,0 +1 @@ +1 0.4990234375 0.33844647519582244 0.65625 0.5163185378590078 diff --git a/VOC/labels/val/01920.txt b/VOC/labels/val/01920.txt new file mode 100644 index 0000000..80e6427 --- /dev/null +++ b/VOC/labels/val/01920.txt @@ -0,0 +1,6 @@ +1 0.13134765625 0.29140625000000003 0.0791015625 0.1296875 +1 0.27197265625 0.34218750000000003 0.0693359375 0.140625 +1 0.40966796875 0.3828125 0.0673828125 0.12187500000000001 +1 0.5439453125 0.31640625 0.08203125 0.1328125 +1 0.693359375 0.23750000000000002 0.07421875 0.1375 +1 0.84423828125 0.20390625 0.0693359375 0.1296875 diff --git a/VOC/labels/val/01960.txt b/VOC/labels/val/01960.txt new file mode 100644 index 0000000..52eeab2 --- /dev/null +++ b/VOC/labels/val/01960.txt @@ -0,0 +1,3 @@ +1 0.323 0.27999999999999997 0.21 0.3466666666666667 +1 0.489 0.5106666666666666 0.146 0.2373333333333333 +1 0.8150000000000001 0.43466666666666665 0.222 0.2826666666666667 diff --git a/VOC/labels/val/01970.txt b/VOC/labels/val/01970.txt new file mode 100644 index 0000000..1ff125d --- /dev/null +++ b/VOC/labels/val/01970.txt @@ -0,0 +1 @@ +1 0.4375 0.2867540029112082 0.38671875 0.35516739446870454 diff --git a/VOC/labels/val/01980.txt b/VOC/labels/val/01980.txt new file mode 100644 index 0000000..1e3a56a --- /dev/null +++ b/VOC/labels/val/01980.txt @@ -0,0 +1,4 @@ +1 0.29052734375 0.27519893899204245 0.1044921875 0.1445623342175066 +1 0.46044921875 0.2652519893899204 0.1064453125 0.17771883289124668 +1 0.62060546875 0.09681697612732094 0.0830078125 0.14058355437665782 +1 0.73828125 0.2791777188328912 0.09765625 0.16578249336870027 diff --git a/VOC/labels/val/01990.txt b/VOC/labels/val/01990.txt new file mode 100644 index 0000000..7923a09 --- /dev/null +++ b/VOC/labels/val/01990.txt @@ -0,0 +1 @@ +1 0.46953125 0.328125 0.1796875 0.27291666666666664 diff --git a/VOC/labels/val/02040.txt b/VOC/labels/val/02040.txt new file mode 100644 index 0000000..404c56d --- /dev/null +++ b/VOC/labels/val/02040.txt @@ -0,0 +1 @@ +1 0.46240234375 0.4329268292682927 0.4541015625 0.6951219512195121 diff --git a/VOC/labels/val/02080.txt b/VOC/labels/val/02080.txt new file mode 100644 index 0000000..1d76059 --- /dev/null +++ b/VOC/labels/val/02080.txt @@ -0,0 +1 @@ +1 0.48486328125 0.28828125 0.3740234375 0.390625 diff --git a/VOC/labels/val/02100.txt b/VOC/labels/val/02100.txt new file mode 100644 index 0000000..4a21e2a --- /dev/null +++ b/VOC/labels/val/02100.txt @@ -0,0 +1,2 @@ +1 0.2703125 0.24537037037037038 0.153125 0.3055555555555556 +1 0.8953125 0.21666666666666667 0.209375 0.3925925925925926 diff --git a/VOC/labels/val/02130.txt b/VOC/labels/val/02130.txt new file mode 100644 index 0000000..c934c4e --- /dev/null +++ b/VOC/labels/val/02130.txt @@ -0,0 +1 @@ +1 0.51015625 0.36666666666666664 0.17343750000000002 0.25 diff --git a/VOC/labels/val/02140.txt b/VOC/labels/val/02140.txt new file mode 100644 index 0000000..5fd3ad4 --- /dev/null +++ b/VOC/labels/val/02140.txt @@ -0,0 +1 @@ +1 0.48486328125 0.3048016701461378 0.5615234375 0.5427974947807933 diff --git a/VOC/labels/val/02160.txt b/VOC/labels/val/02160.txt new file mode 100644 index 0000000..28dd31c --- /dev/null +++ b/VOC/labels/val/02160.txt @@ -0,0 +1 @@ +1 0.49755859375 0.21868787276341947 0.2470703125 0.2962226640159045 diff --git a/VOC/labels/val/02170.txt b/VOC/labels/val/02170.txt new file mode 100644 index 0000000..f31faba --- /dev/null +++ b/VOC/labels/val/02170.txt @@ -0,0 +1 @@ +1 0.56953125 0.4041666666666667 0.20468750000000002 0.3 diff --git a/VOC/labels/val/02210.txt b/VOC/labels/val/02210.txt new file mode 100644 index 0000000..5131b36 --- /dev/null +++ b/VOC/labels/val/02210.txt @@ -0,0 +1 @@ +1 0.58359375 0.46249999999999997 0.1953125 0.2916666666666667 diff --git a/VOC/labels/val/02240.txt b/VOC/labels/val/02240.txt new file mode 100644 index 0000000..41f6f40 --- /dev/null +++ b/VOC/labels/val/02240.txt @@ -0,0 +1,2 @@ +1 0.44384765625 0.41421143847487 0.0849609375 0.22530329289428075 +1 0.5732421875 0.22010398613518195 0.123046875 0.24263431542461003 diff --git a/VOC/labels/val/02260.txt b/VOC/labels/val/02260.txt new file mode 100644 index 0000000..33b321b --- /dev/null +++ b/VOC/labels/val/02260.txt @@ -0,0 +1 @@ +1 0.44873046875 0.14264619019492025 0.2080078125 0.17542823390431186 diff --git a/VOC/labels/val/02280.txt b/VOC/labels/val/02280.txt new file mode 100644 index 0000000..06c51e9 --- /dev/null +++ b/VOC/labels/val/02280.txt @@ -0,0 +1 @@ +1 0.56953125 0.4708333333333333 0.19843750000000002 0.3458333333333333 diff --git a/VOC/labels/val/02290.txt b/VOC/labels/val/02290.txt new file mode 100644 index 0000000..503e210 --- /dev/null +++ b/VOC/labels/val/02290.txt @@ -0,0 +1 @@ +1 0.30615234375 0.48871527777777773 0.3798828125 0.9322916666666666 diff --git a/VOC/labels/val/02300.txt b/VOC/labels/val/02300.txt new file mode 100644 index 0000000..b1f5e50 --- /dev/null +++ b/VOC/labels/val/02300.txt @@ -0,0 +1 @@ +1 0.5281250000000001 0.5072916666666667 0.184375 0.28541666666666665 diff --git a/VOC/labels/val/02310.txt b/VOC/labels/val/02310.txt new file mode 100644 index 0000000..81754b5 --- /dev/null +++ b/VOC/labels/val/02310.txt @@ -0,0 +1 @@ +1 0.43671875000000004 0.4375 0.20468750000000002 0.325 diff --git a/VOC/labels/val/02340.txt b/VOC/labels/val/02340.txt new file mode 100644 index 0000000..6cbf5bd --- /dev/null +++ b/VOC/labels/val/02340.txt @@ -0,0 +1,2 @@ +1 0.389 0.17866666666666667 0.258 0.3413333333333333 +1 0.6 0.36533333333333334 0.192 0.2773333333333333 diff --git a/VOC/labels/val/02350.txt b/VOC/labels/val/02350.txt new file mode 100644 index 0000000..f0b4901 --- /dev/null +++ b/VOC/labels/val/02350.txt @@ -0,0 +1,4 @@ +1 0.631 0.444 0.074 0.13066666666666665 +1 0.515 0.4933333333333333 0.078 0.112 +1 0.393 0.448 0.078 0.12266666666666666 +1 0.25 0.5213333333333333 0.088 0.11466666666666667 diff --git a/VOC/labels/val/02370.txt b/VOC/labels/val/02370.txt new file mode 100644 index 0000000..d894b79 --- /dev/null +++ b/VOC/labels/val/02370.txt @@ -0,0 +1 @@ +1 0.59912109375 0.32650073206442165 0.2177734375 0.35431918008784774 diff --git a/VOC/labels/val/02380.txt b/VOC/labels/val/02380.txt new file mode 100644 index 0000000..3abdcb1 --- /dev/null +++ b/VOC/labels/val/02380.txt @@ -0,0 +1 @@ +1 0.50439453125 0.27115885416666663 0.2607421875 0.263671875 diff --git a/VOC/labels/val/02400.txt b/VOC/labels/val/02400.txt new file mode 100644 index 0000000..bb8cfad --- /dev/null +++ b/VOC/labels/val/02400.txt @@ -0,0 +1 @@ +1 0.5437500000000001 0.42291666666666666 0.146875 0.25 diff --git a/VOC/labels/val/02420.txt b/VOC/labels/val/02420.txt new file mode 100644 index 0000000..959a0c2 --- /dev/null +++ b/VOC/labels/val/02420.txt @@ -0,0 +1 @@ +1 0.5554687500000001 0.3229166666666667 0.2234375 0.3 diff --git a/VOC/labels/val/02440.txt b/VOC/labels/val/02440.txt new file mode 100644 index 0000000..355a8f5 --- /dev/null +++ b/VOC/labels/val/02440.txt @@ -0,0 +1,2 @@ +1 0.4015625 0.4 0.10104166666666667 0.24074074074074076 +1 0.7161458333333334 0.3944444444444445 0.11562499999999999 0.25925925925925924 diff --git a/VOC/labels/val/02450.txt b/VOC/labels/val/02450.txt new file mode 100644 index 0000000..f9d4dab --- /dev/null +++ b/VOC/labels/val/02450.txt @@ -0,0 +1 @@ +1 0.49453125000000003 0.49166666666666664 0.2171875 0.26666666666666666 diff --git a/VOC/labels/val/02490.txt b/VOC/labels/val/02490.txt new file mode 100644 index 0000000..5588659 --- /dev/null +++ b/VOC/labels/val/02490.txt @@ -0,0 +1 @@ +1 0.48193359375 0.28125 0.4755859375 0.40625 diff --git a/VOC/labels/val/02500.txt b/VOC/labels/val/02500.txt new file mode 100644 index 0000000..a2a2f68 --- /dev/null +++ b/VOC/labels/val/02500.txt @@ -0,0 +1,3 @@ +1 0.2890625 0.3351851851851852 0.09895833333333333 0.1925925925925926 +1 0.42864583333333334 0.4 0.04895833333333333 0.10370370370370371 +1 0.7567708333333333 0.25833333333333336 0.06979166666666667 0.12407407407407407 diff --git a/VOC/labels/val/02510.txt b/VOC/labels/val/02510.txt new file mode 100644 index 0000000..22ec62f --- /dev/null +++ b/VOC/labels/val/02510.txt @@ -0,0 +1 @@ +1 0.6376953125 0.1299212598425197 0.31640625 0.21709786276715412 diff --git a/VOC/labels/val/02520.txt b/VOC/labels/val/02520.txt new file mode 100644 index 0000000..2069102 --- /dev/null +++ b/VOC/labels/val/02520.txt @@ -0,0 +1 @@ +1 0.54345703125 0.17564655172413793 0.2626953125 0.23204022988505746 diff --git a/VOC/labels/val/02530.txt b/VOC/labels/val/02530.txt new file mode 100644 index 0000000..07be630 --- /dev/null +++ b/VOC/labels/val/02530.txt @@ -0,0 +1 @@ +1 0.52392578125 0.3259687287559483 0.5087890625 0.5254928619986403 diff --git a/VOC/labels/val/02540.txt b/VOC/labels/val/02540.txt new file mode 100644 index 0000000..b92f225 --- /dev/null +++ b/VOC/labels/val/02540.txt @@ -0,0 +1 @@ +1 0.578125 0.375 0.19687500000000002 0.275 diff --git a/VOC/labels/val/02570.txt b/VOC/labels/val/02570.txt new file mode 100644 index 0000000..b63b315 --- /dev/null +++ b/VOC/labels/val/02570.txt @@ -0,0 +1 @@ +1 0.4375 0.3788961038961039 0.478515625 0.4642857142857143 diff --git a/VOC/labels/val/02580.txt b/VOC/labels/val/02580.txt new file mode 100644 index 0000000..95ca170 --- /dev/null +++ b/VOC/labels/val/02580.txt @@ -0,0 +1 @@ +1 0.5171875 0.340625 0.19062500000000002 0.2895833333333333 diff --git a/VOC/labels/val/02600.txt b/VOC/labels/val/02600.txt new file mode 100644 index 0000000..fb83cc4 --- /dev/null +++ b/VOC/labels/val/02600.txt @@ -0,0 +1 @@ +1 0.50625 0.4354166666666667 0.19062500000000002 0.29583333333333334 diff --git a/VOC/labels/val/02610.txt b/VOC/labels/val/02610.txt new file mode 100644 index 0000000..0be60ca --- /dev/null +++ b/VOC/labels/val/02610.txt @@ -0,0 +1 @@ +1 0.59609375 0.33958333333333335 0.1796875 0.32916666666666666 diff --git a/VOC/labels/val/02630.txt b/VOC/labels/val/02630.txt new file mode 100644 index 0000000..25cc112 --- /dev/null +++ b/VOC/labels/val/02630.txt @@ -0,0 +1 @@ +1 0.55224609375 0.4 0.3388671875 0.6235294117647059 diff --git a/VOC/labels/val/02640.txt b/VOC/labels/val/02640.txt new file mode 100644 index 0000000..4db82c0 --- /dev/null +++ b/VOC/labels/val/02640.txt @@ -0,0 +1 @@ +1 0.324 0.339 0.37066666666666664 0.382 diff --git a/VOC/labels/val/02650.txt b/VOC/labels/val/02650.txt new file mode 100644 index 0000000..ca90fb1 --- /dev/null +++ b/VOC/labels/val/02650.txt @@ -0,0 +1 @@ +1 0.50625 0.35104166666666664 0.215625 0.33541666666666664 diff --git a/VOC/labels/val/02670.txt b/VOC/labels/val/02670.txt new file mode 100644 index 0000000..36702c0 --- /dev/null +++ b/VOC/labels/val/02670.txt @@ -0,0 +1 @@ +1 0.53125 0.4306640625 0.23828125 0.16861979166666666 diff --git a/VOC/labels/val/02710.txt b/VOC/labels/val/02710.txt new file mode 100644 index 0000000..7f5819a --- /dev/null +++ b/VOC/labels/val/02710.txt @@ -0,0 +1 @@ +1 0.766 0.503003003003003 0.164 0.3033033033033033 diff --git a/VOC/labels/val/02720.txt b/VOC/labels/val/02720.txt new file mode 100644 index 0000000..d78d156 --- /dev/null +++ b/VOC/labels/val/02720.txt @@ -0,0 +1,2 @@ +1 0.4421875 0.38981481481481484 0.10104166666666667 0.23148148148148148 +1 0.596875 0.41944444444444445 0.11041666666666666 0.24629629629629632 diff --git a/VOC/labels/val/02730.txt b/VOC/labels/val/02730.txt new file mode 100644 index 0000000..1465ffa --- /dev/null +++ b/VOC/labels/val/02730.txt @@ -0,0 +1 @@ +1 0.41500000000000004 0.312 0.122 0.20266666666666666 diff --git a/VOC/labels/val/02740.txt b/VOC/labels/val/02740.txt new file mode 100644 index 0000000..35e9e28 --- /dev/null +++ b/VOC/labels/val/02740.txt @@ -0,0 +1 @@ +1 0.451171875 0.1806640625 0.310546875 0.2532552083333333 diff --git a/VOC/labels/val/02750.txt b/VOC/labels/val/02750.txt new file mode 100644 index 0000000..55a058b --- /dev/null +++ b/VOC/labels/val/02750.txt @@ -0,0 +1 @@ +1 0.50244140625 0.26666666666666666 0.3623046875 0.39565217391304347 diff --git a/VOC/labels/val/02760.txt b/VOC/labels/val/02760.txt new file mode 100644 index 0000000..76ada16 --- /dev/null +++ b/VOC/labels/val/02760.txt @@ -0,0 +1,4 @@ +1 0.17333984375 0.17035398230088494 0.0673828125 0.13126843657817108 +1 0.36083984375 0.24631268436578171 0.0634765625 0.10324483775811209 +1 0.55908203125 0.2485250737463127 0.0576171875 0.1224188790560472 +1 0.73779296875 0.20943952802359883 0.0673828125 0.12684365781710916 diff --git a/VOC/labels/val/02780.txt b/VOC/labels/val/02780.txt new file mode 100644 index 0000000..935b95f --- /dev/null +++ b/VOC/labels/val/02780.txt @@ -0,0 +1,2 @@ +1 0.38330078125 0.12405731523378583 0.1767578125 0.18174962292609353 +1 0.6181640625 0.27450980392156865 0.1796875 0.1794871794871795 diff --git a/VOC/labels/val/02800.txt b/VOC/labels/val/02800.txt new file mode 100644 index 0000000..6f341f4 --- /dev/null +++ b/VOC/labels/val/02800.txt @@ -0,0 +1 @@ +1 0.51796875 0.475 0.2015625 0.3 diff --git a/VOC/labels/val/02810.txt b/VOC/labels/val/02810.txt new file mode 100644 index 0000000..e1bdf08 --- /dev/null +++ b/VOC/labels/val/02810.txt @@ -0,0 +1 @@ +1 0.5632812500000001 0.4125 0.21406250000000002 0.3 diff --git a/VOC/labels/val/02840.txt b/VOC/labels/val/02840.txt new file mode 100644 index 0000000..76381c7 --- /dev/null +++ b/VOC/labels/val/02840.txt @@ -0,0 +1,3 @@ +1 0.21337890625 0.10864864864864865 0.1376953125 0.20432432432432432 +1 0.39111328125 0.14972972972972973 0.1513671875 0.18486486486486486 +1 0.87548828125 0.13135135135135134 0.1689453125 0.22378378378378377 diff --git a/VOC/labels/val/02850.txt b/VOC/labels/val/02850.txt new file mode 100644 index 0000000..fa9a64c --- /dev/null +++ b/VOC/labels/val/02850.txt @@ -0,0 +1 @@ +1 0.496875 0.3989583333333333 0.20625000000000002 0.31875 diff --git a/VOC/labels/val/02860.txt b/VOC/labels/val/02860.txt new file mode 100644 index 0000000..0400196 --- /dev/null +++ b/VOC/labels/val/02860.txt @@ -0,0 +1 @@ +1 0.46044921875 0.17833981841763943 0.3583984375 0.2814526588845655 diff --git a/VOC/labels/val/02880.txt b/VOC/labels/val/02880.txt new file mode 100644 index 0000000..17495e0 --- /dev/null +++ b/VOC/labels/val/02880.txt @@ -0,0 +1,2 @@ +1 0.3182291666666667 0.31574074074074077 0.165625 0.30185185185185187 +1 0.8859374999999999 0.2564814814814815 0.228125 0.4425925925925926 diff --git a/VOC/labels/val/02890.txt b/VOC/labels/val/02890.txt new file mode 100644 index 0000000..fc6a52b --- /dev/null +++ b/VOC/labels/val/02890.txt @@ -0,0 +1 @@ +1 0.55078125 0.37916666666666665 0.24531250000000002 0.35 diff --git a/VOC/labels/val/02900.txt b/VOC/labels/val/02900.txt new file mode 100644 index 0000000..f2f6a29 --- /dev/null +++ b/VOC/labels/val/02900.txt @@ -0,0 +1 @@ +1 0.53828125 0.45208333333333334 0.1484375 0.24583333333333332 diff --git a/VOC/labels/val/02910.txt b/VOC/labels/val/02910.txt new file mode 100644 index 0000000..435d776 --- /dev/null +++ b/VOC/labels/val/02910.txt @@ -0,0 +1 @@ +1 0.53515625 0.34479166666666666 0.1859375 0.29375 diff --git a/VOC/labels/val/02920.txt b/VOC/labels/val/02920.txt new file mode 100644 index 0000000..e7d1ecb --- /dev/null +++ b/VOC/labels/val/02920.txt @@ -0,0 +1 @@ +1 0.56591796875 0.29654255319148937 0.5146484375 0.39361702127659576 diff --git a/VOC/labels/val/02930.txt b/VOC/labels/val/02930.txt new file mode 100644 index 0000000..a3bc9d2 --- /dev/null +++ b/VOC/labels/val/02930.txt @@ -0,0 +1 @@ +1 0.3466796875 0.23871527777777776 0.22265625 0.4392361111111111 diff --git a/VOC/labels/val/02950.txt b/VOC/labels/val/02950.txt new file mode 100644 index 0000000..04826f4 --- /dev/null +++ b/VOC/labels/val/02950.txt @@ -0,0 +1,2 @@ +1 0.2953125 0.39814814814814814 0.165625 0.3925925925925926 +1 0.7671875 0.4027777777777778 0.165625 0.3648148148148148 diff --git a/VOC/labels/val/02990.txt b/VOC/labels/val/02990.txt new file mode 100644 index 0000000..efbac85 --- /dev/null +++ b/VOC/labels/val/02990.txt @@ -0,0 +1 @@ +1 0.5320312500000001 0.3125 0.2078125 0.35833333333333334 diff --git a/VOC/labels/val/03030.txt b/VOC/labels/val/03030.txt new file mode 100644 index 0000000..8bcc0a0 --- /dev/null +++ b/VOC/labels/val/03030.txt @@ -0,0 +1 @@ +1 0.5088541666666666 0.4027777777777778 0.221875 0.4981481481481482 diff --git a/VOC/labels/val/03050.txt b/VOC/labels/val/03050.txt new file mode 100644 index 0000000..4950976 --- /dev/null +++ b/VOC/labels/val/03050.txt @@ -0,0 +1,3 @@ +1 0.146 0.44266666666666665 0.108 0.18666666666666665 +1 0.313 0.484 0.114 0.14133333333333334 +1 0.559 0.4706666666666667 0.058 0.09333333333333332 diff --git a/VOC/labels/val/03060.txt b/VOC/labels/val/03060.txt new file mode 100644 index 0000000..4e21eb9 --- /dev/null +++ b/VOC/labels/val/03060.txt @@ -0,0 +1 @@ +1 0.53828125 0.34375 0.2015625 0.2875 diff --git a/VOC/labels/val/03150.txt b/VOC/labels/val/03150.txt new file mode 100644 index 0000000..001b728 --- /dev/null +++ b/VOC/labels/val/03150.txt @@ -0,0 +1 @@ +1 0.50625 0.5010416666666666 0.20625000000000002 0.3145833333333333 diff --git a/VOC/labels/val/03170.txt b/VOC/labels/val/03170.txt new file mode 100644 index 0000000..f26f79f --- /dev/null +++ b/VOC/labels/val/03170.txt @@ -0,0 +1,3 @@ +1 0.1953125 0.30139372822299654 0.193359375 0.3519163763066202 +1 0.431640625 0.3042973286875726 0.21484375 0.31823461091753774 +1 0.81884765625 0.22357723577235772 0.2080078125 0.33797909407665505 diff --git a/VOC/labels/val/03180.txt b/VOC/labels/val/03180.txt new file mode 100644 index 0000000..726e778 --- /dev/null +++ b/VOC/labels/val/03180.txt @@ -0,0 +1 @@ +1 0.490234375 0.2043509272467903 0.44140625 0.3459343794579173 diff --git a/VOC/labels/val/03250.txt b/VOC/labels/val/03250.txt new file mode 100644 index 0000000..c0aab51 --- /dev/null +++ b/VOC/labels/val/03250.txt @@ -0,0 +1 @@ +1 0.39501953125 0.21952817824377457 0.3896484375 0.31585845347313235 diff --git a/VOC/labels/val/03260.txt b/VOC/labels/val/03260.txt new file mode 100644 index 0000000..f7c5c84 --- /dev/null +++ b/VOC/labels/val/03260.txt @@ -0,0 +1 @@ +1 0.494140625 0.28527370855821127 0.5078125 0.4518118735543562 diff --git a/VOC/labels/val/03280.txt b/VOC/labels/val/03280.txt new file mode 100644 index 0000000..106b0fe --- /dev/null +++ b/VOC/labels/val/03280.txt @@ -0,0 +1 @@ +1 0.5166015625 0.3199013157894737 0.41015625 0.42105263157894735 diff --git a/VOC/labels/val/03290.txt b/VOC/labels/val/03290.txt new file mode 100644 index 0000000..cb6e448 --- /dev/null +++ b/VOC/labels/val/03290.txt @@ -0,0 +1 @@ +1 0.5554687500000001 0.41875 0.17343750000000002 0.2583333333333333 diff --git a/VOC/labels/val/03320.txt b/VOC/labels/val/03320.txt new file mode 100644 index 0000000..186040e --- /dev/null +++ b/VOC/labels/val/03320.txt @@ -0,0 +1 @@ +1 0.5283203125 0.16703296703296702 0.154296875 0.17435897435897435 diff --git a/VOC/labels/val/03330.txt b/VOC/labels/val/03330.txt new file mode 100644 index 0000000..c61f647 --- /dev/null +++ b/VOC/labels/val/03330.txt @@ -0,0 +1 @@ +1 0.5828125000000001 0.471875 0.20625000000000002 0.3229166666666667 diff --git a/VOC/labels/val/03340.txt b/VOC/labels/val/03340.txt new file mode 100644 index 0000000..cb919bb --- /dev/null +++ b/VOC/labels/val/03340.txt @@ -0,0 +1 @@ +1 0.64697265625 0.25045703839122485 0.3193359375 0.43144424131627057 diff --git a/VOC/labels/val/03350.txt b/VOC/labels/val/03350.txt new file mode 100644 index 0000000..f1e5647 --- /dev/null +++ b/VOC/labels/val/03350.txt @@ -0,0 +1 @@ +1 0.51953125 0.43645833333333334 0.22031250000000002 0.3520833333333333 diff --git a/VOC/labels/val/03370.txt b/VOC/labels/val/03370.txt new file mode 100644 index 0000000..7214317 --- /dev/null +++ b/VOC/labels/val/03370.txt @@ -0,0 +1 @@ +1 0.56796875 0.45 0.1765625 0.2708333333333333 diff --git a/VOC/labels/val/03390.txt b/VOC/labels/val/03390.txt new file mode 100644 index 0000000..0c99585 --- /dev/null +++ b/VOC/labels/val/03390.txt @@ -0,0 +1 @@ +1 0.48486328125 0.22216981132075472 0.2060546875 0.24433962264150944 diff --git a/VOC/labels/val/03410.txt b/VOC/labels/val/03410.txt new file mode 100644 index 0000000..8fca366 --- /dev/null +++ b/VOC/labels/val/03410.txt @@ -0,0 +1 @@ +1 0.49531250000000004 0.4302083333333333 0.25 0.3854166666666667 diff --git a/VOC/labels/val/03430.txt b/VOC/labels/val/03430.txt new file mode 100644 index 0000000..54c9803 --- /dev/null +++ b/VOC/labels/val/03430.txt @@ -0,0 +1 @@ +1 0.4990234375 0.2351369405477622 0.3984375 0.35136940547762197 diff --git a/VOC/labels/val/03440.txt b/VOC/labels/val/03440.txt new file mode 100644 index 0000000..81e0e89 --- /dev/null +++ b/VOC/labels/val/03440.txt @@ -0,0 +1 @@ +1 0.6279296875 0.19965277777777776 0.173828125 0.38888888888888884 diff --git a/VOC/labels/val/03460.txt b/VOC/labels/val/03460.txt new file mode 100644 index 0000000..833ac09 --- /dev/null +++ b/VOC/labels/val/03460.txt @@ -0,0 +1 @@ +1 0.52890625 0.403125 0.1859375 0.28541666666666665 diff --git a/VOC/labels/val/03480.txt b/VOC/labels/val/03480.txt new file mode 100644 index 0000000..0587b38 --- /dev/null +++ b/VOC/labels/val/03480.txt @@ -0,0 +1 @@ +1 0.4765625 0.16136363636363638 0.232421875 0.2448051948051948 diff --git a/VOC/labels/val/03490.txt b/VOC/labels/val/03490.txt new file mode 100644 index 0000000..843c7c2 --- /dev/null +++ b/VOC/labels/val/03490.txt @@ -0,0 +1,4 @@ +1 0.28125 0.5527086383601757 0.123046875 0.18887262079062958 +1 0.47314453125 0.4882869692532943 0.1103515625 0.20351390922401172 +1 0.6435546875 0.4758418740849195 0.12109375 0.22840409956076135 +1 0.84375 0.4641288433382138 0.1640625 0.2840409956076135 diff --git a/VOC/labels/val/03520.txt b/VOC/labels/val/03520.txt new file mode 100644 index 0000000..7da6ca7 --- /dev/null +++ b/VOC/labels/val/03520.txt @@ -0,0 +1 @@ +1 0.505859375 0.30018331805682863 0.2734375 0.2923923006416132 diff --git a/VOC/labels/val/03530.txt b/VOC/labels/val/03530.txt new file mode 100644 index 0000000..8c59de1 --- /dev/null +++ b/VOC/labels/val/03530.txt @@ -0,0 +1 @@ +1 0.49365234375 0.3204647676161919 0.5048828125 0.4760119940029985 diff --git a/VOC/labels/val/03580.txt b/VOC/labels/val/03580.txt new file mode 100644 index 0000000..866cb00 --- /dev/null +++ b/VOC/labels/val/03580.txt @@ -0,0 +1,2 @@ +1 0.31884765625 0.09913419913419913 0.1435546875 0.129004329004329 +1 0.55078125 0.09653679653679653 0.140625 0.15324675324675324 diff --git a/VOC/labels/val/03610.txt b/VOC/labels/val/03610.txt new file mode 100644 index 0000000..2821f3d --- /dev/null +++ b/VOC/labels/val/03610.txt @@ -0,0 +1 @@ +1 0.4859375 0.4927083333333333 0.203125 0.30625 diff --git a/VOC/labels/val/03630.txt b/VOC/labels/val/03630.txt new file mode 100644 index 0000000..73e7bdb --- /dev/null +++ b/VOC/labels/val/03630.txt @@ -0,0 +1 @@ +1 0.50439453125 0.1599868593955322 0.3701171875 0.2726675427069645 diff --git a/VOC/labels/val/03650.txt b/VOC/labels/val/03650.txt new file mode 100644 index 0000000..710655e --- /dev/null +++ b/VOC/labels/val/03650.txt @@ -0,0 +1 @@ +1 0.3598958333333333 0.26203703703703707 0.20520833333333333 0.46111111111111114 diff --git a/VOC/labels/val/03660.txt b/VOC/labels/val/03660.txt new file mode 100644 index 0000000..8b14615 --- /dev/null +++ b/VOC/labels/val/03660.txt @@ -0,0 +1 @@ +1 0.5234375 0.43124999999999997 0.209375 0.2916666666666667 diff --git a/VOC/labels/val/03680.txt b/VOC/labels/val/03680.txt new file mode 100644 index 0000000..cce0675 --- /dev/null +++ b/VOC/labels/val/03680.txt @@ -0,0 +1 @@ +1 0.38818359375 0.21187540558079168 0.4794921875 0.3977936404931862 diff --git a/VOC/labels/val/03700.txt b/VOC/labels/val/03700.txt new file mode 100644 index 0000000..6428d36 --- /dev/null +++ b/VOC/labels/val/03700.txt @@ -0,0 +1 @@ +1 0.55234375 0.3333333333333333 0.19843750000000002 0.2833333333333333 diff --git a/VOC/labels/val/03710.txt b/VOC/labels/val/03710.txt new file mode 100644 index 0000000..0169cfa --- /dev/null +++ b/VOC/labels/val/03710.txt @@ -0,0 +1 @@ +1 0.4755859375 0.2998046875 0.568359375 0.474609375 diff --git a/VOC/labels/val/03730.txt b/VOC/labels/val/03730.txt new file mode 100644 index 0000000..7feef0f --- /dev/null +++ b/VOC/labels/val/03730.txt @@ -0,0 +1 @@ +1 0.58984375 0.4083333333333333 0.1609375 0.23333333333333334 diff --git a/VOC/labels/val/03740.txt b/VOC/labels/val/03740.txt new file mode 100644 index 0000000..cc23825 --- /dev/null +++ b/VOC/labels/val/03740.txt @@ -0,0 +1,2 @@ +1 0.521 0.5666666666666667 0.10200000000000001 0.152 +1 0.6960000000000001 0.5439999999999999 0.116 0.17066666666666666 diff --git a/VOC/labels/val/03750.txt b/VOC/labels/val/03750.txt new file mode 100644 index 0000000..25f26f5 --- /dev/null +++ b/VOC/labels/val/03750.txt @@ -0,0 +1 @@ +1 0.53828125 0.30833333333333335 0.16718750000000002 0.2875 diff --git a/VOC/labels/val/03760.txt b/VOC/labels/val/03760.txt new file mode 100644 index 0000000..935c51b --- /dev/null +++ b/VOC/labels/val/03760.txt @@ -0,0 +1 @@ +1 0.48095703125 0.3950097213220998 0.6064453125 0.5398574206092028 diff --git a/VOC/labels/val/03780.txt b/VOC/labels/val/03780.txt new file mode 100644 index 0000000..e6f2ad9 --- /dev/null +++ b/VOC/labels/val/03780.txt @@ -0,0 +1 @@ +1 0.5593750000000001 0.484375 0.21250000000000002 0.33958333333333335 diff --git a/VOC/labels/val/03800.txt b/VOC/labels/val/03800.txt new file mode 100644 index 0000000..63a71bd --- /dev/null +++ b/VOC/labels/val/03800.txt @@ -0,0 +1 @@ +1 0.5419921875 0.17950391644908617 0.34765625 0.24673629242819844 diff --git a/VOC/labels/val/03810.txt b/VOC/labels/val/03810.txt new file mode 100644 index 0000000..4a0fcbf --- /dev/null +++ b/VOC/labels/val/03810.txt @@ -0,0 +1 @@ +1 0.50703125 0.40625 0.21406250000000002 0.30833333333333335 diff --git a/VOC/labels/val/03840.txt b/VOC/labels/val/03840.txt new file mode 100644 index 0000000..126daaa --- /dev/null +++ b/VOC/labels/val/03840.txt @@ -0,0 +1,2 @@ +1 0.15625 0.4773060029282577 0.1953125 0.17715959004392387 +1 0.75439453125 0.1965592972181552 0.2255859375 0.19692532942898977 diff --git a/VOC/labels/val/03890.txt b/VOC/labels/val/03890.txt new file mode 100644 index 0000000..71ddf9e --- /dev/null +++ b/VOC/labels/val/03890.txt @@ -0,0 +1 @@ +1 0.40576171875 0.40441176470588236 0.2392578125 0.41470588235294115 diff --git a/VOC/labels/val/03920.txt b/VOC/labels/val/03920.txt new file mode 100644 index 0000000..ae44643 --- /dev/null +++ b/VOC/labels/val/03920.txt @@ -0,0 +1 @@ +1 0.5203125000000001 0.44166666666666665 0.18125000000000002 0.2875 diff --git a/VOC/labels/val/03940.txt b/VOC/labels/val/03940.txt new file mode 100644 index 0000000..f43667e --- /dev/null +++ b/VOC/labels/val/03940.txt @@ -0,0 +1 @@ +1 0.4609375 0.20795306388526727 0.357421875 0.3350717079530639 diff --git a/VOC/labels/val/03950.txt b/VOC/labels/val/03950.txt new file mode 100644 index 0000000..05f3bfa --- /dev/null +++ b/VOC/labels/val/03950.txt @@ -0,0 +1,4 @@ +1 0.14990234375 0.4158125915080527 0.1083984375 0.21669106881405564 +1 0.36669921875 0.42752562225475843 0.1162109375 0.18740849194729137 +1 0.60009765625 0.32723279648609077 0.1220703125 0.22986822840409957 +1 0.87255859375 0.3440702781844802 0.1298828125 0.2664714494875549 diff --git a/VOC/labels/val/03970.txt b/VOC/labels/val/03970.txt new file mode 100644 index 0000000..6fde884 --- /dev/null +++ b/VOC/labels/val/03970.txt @@ -0,0 +1 @@ +1 0.5078125 0.5814814814814815 0.13645833333333332 0.32592592592592595 diff --git a/VOC/labels/val/03980.txt b/VOC/labels/val/03980.txt new file mode 100644 index 0000000..20536cb --- /dev/null +++ b/VOC/labels/val/03980.txt @@ -0,0 +1 @@ +1 0.58828125 0.36041666666666666 0.1921875 0.30833333333333335 diff --git a/VOC/labels/val/04000.txt b/VOC/labels/val/04000.txt new file mode 100644 index 0000000..aa5eb4e --- /dev/null +++ b/VOC/labels/val/04000.txt @@ -0,0 +1,2 @@ +1 0.30224609375 0.2601010101010101 0.3369140625 0.33261183261183264 +1 0.76708984375 0.2976190476190476 0.3583984375 0.3297258297258297 diff --git a/VOC/labels/val/04050.txt b/VOC/labels/val/04050.txt new file mode 100644 index 0000000..7aeda55 --- /dev/null +++ b/VOC/labels/val/04050.txt @@ -0,0 +1 @@ +1 0.54296875 0.4166666666666667 0.21406250000000002 0.3458333333333333 diff --git a/VOC/labels/val/04070.txt b/VOC/labels/val/04070.txt new file mode 100644 index 0000000..b112600 --- /dev/null +++ b/VOC/labels/val/04070.txt @@ -0,0 +1,2 @@ +1 0.28125 0.189453125 0.1796875 0.35026041666666663 +1 0.71728515625 0.306640625 0.1767578125 0.29296875 diff --git a/VOC/labels/val/04110.txt b/VOC/labels/val/04110.txt new file mode 100644 index 0000000..7b397d1 --- /dev/null +++ b/VOC/labels/val/04110.txt @@ -0,0 +1 @@ +1 0.5078125 0.1801831262262917 0.306640625 0.27795945062132116 diff --git a/VOC/labels/val/04120.txt b/VOC/labels/val/04120.txt new file mode 100644 index 0000000..4417be3 --- /dev/null +++ b/VOC/labels/val/04120.txt @@ -0,0 +1 @@ +1 0.48984375 0.3208333333333333 0.2234375 0.3458333333333333 diff --git a/VOC/labels/val/04130.txt b/VOC/labels/val/04130.txt new file mode 100644 index 0000000..1e185e4 --- /dev/null +++ b/VOC/labels/val/04130.txt @@ -0,0 +1 @@ +1 0.47998046875 0.322692793931732 0.7392578125 0.5619469026548674 diff --git a/VOC/labels/val/04230.txt b/VOC/labels/val/04230.txt new file mode 100644 index 0000000..72c76d0 --- /dev/null +++ b/VOC/labels/val/04230.txt @@ -0,0 +1 @@ +1 0.52265625 0.31875 0.2078125 0.32916666666666666 diff --git a/VOC/labels/val/04240.txt b/VOC/labels/val/04240.txt new file mode 100644 index 0000000..373561d --- /dev/null +++ b/VOC/labels/val/04240.txt @@ -0,0 +1 @@ +1 0.42529296875 0.28081123244929795 0.2099609375 0.39001560062402496 diff --git a/VOC/labels/val/04260.txt b/VOC/labels/val/04260.txt new file mode 100644 index 0000000..8fa6185 --- /dev/null +++ b/VOC/labels/val/04260.txt @@ -0,0 +1,5 @@ +1 0.1337890625 0.15427769985974754 0.091796875 0.1514726507713885 +1 0.3251953125 0.19074333800841514 0.07421875 0.14305750350631136 +1 0.50927734375 0.15357643758765777 0.0888671875 0.15287517531556802 +1 0.71533203125 0.16690042075736325 0.0908203125 0.1514726507713885 +1 0.890625 0.15007012622720897 0.099609375 0.16269284712482468 diff --git a/VOC/labels/val/04290.txt b/VOC/labels/val/04290.txt new file mode 100644 index 0000000..4bff323 --- /dev/null +++ b/VOC/labels/val/04290.txt @@ -0,0 +1 @@ +1 0.3564453125 0.3831380208333333 0.28515625 0.21419270833333331 diff --git a/VOC/labels/val/04300.txt b/VOC/labels/val/04300.txt new file mode 100644 index 0000000..b0a9a38 --- /dev/null +++ b/VOC/labels/val/04300.txt @@ -0,0 +1 @@ +1 0.50439453125 0.25875486381322954 0.2822265625 0.23605706874189364 diff --git a/VOC/labels/val/04320.txt b/VOC/labels/val/04320.txt new file mode 100644 index 0000000..a5fc30e --- /dev/null +++ b/VOC/labels/val/04320.txt @@ -0,0 +1 @@ +1 0.276 0.18133333333333332 0.088 0.128 diff --git a/VOC/labels/val/04330.txt b/VOC/labels/val/04330.txt new file mode 100644 index 0000000..c7f0083 --- /dev/null +++ b/VOC/labels/val/04330.txt @@ -0,0 +1 @@ +1 0.45654296875 0.29675324675324677 0.3779296875 0.3064935064935065 diff --git a/VOC/labels/val/04360.txt b/VOC/labels/val/04360.txt new file mode 100644 index 0000000..610becc --- /dev/null +++ b/VOC/labels/val/04360.txt @@ -0,0 +1 @@ +1 0.5634765625 0.3133986928104575 0.6015625 0.5117647058823529 diff --git a/VOC/labels/val/04380.txt b/VOC/labels/val/04380.txt new file mode 100644 index 0000000..7341e99 --- /dev/null +++ b/VOC/labels/val/04380.txt @@ -0,0 +1 @@ +1 0.47509765625 0.10944363103953147 0.2138671875 0.17057101024890192 diff --git a/VOC/labels/val/04400.txt b/VOC/labels/val/04400.txt new file mode 100644 index 0000000..d27079d --- /dev/null +++ b/VOC/labels/val/04400.txt @@ -0,0 +1 @@ +1 0.48876953125 0.24552429667519182 0.3154296875 0.3546462063086104 diff --git a/VOC/labels/val/04410.txt b/VOC/labels/val/04410.txt new file mode 100644 index 0000000..24b8048 --- /dev/null +++ b/VOC/labels/val/04410.txt @@ -0,0 +1 @@ +1 0.4794921875 0.28729641693811075 0.380859375 0.3622149837133551 diff --git a/VOC/labels/val/04470.txt b/VOC/labels/val/04470.txt new file mode 100644 index 0000000..7d6294d --- /dev/null +++ b/VOC/labels/val/04470.txt @@ -0,0 +1 @@ +1 0.5361328125 0.2883542538354254 0.484375 0.40655509065550904 diff --git a/VOC/labels/val/04490.txt b/VOC/labels/val/04490.txt new file mode 100644 index 0000000..d93f44f --- /dev/null +++ b/VOC/labels/val/04490.txt @@ -0,0 +1 @@ +1 0.53466796875 0.42447916666666663 0.3173828125 0.5494791666666666 diff --git a/VOC/labels/val/04520.txt b/VOC/labels/val/04520.txt new file mode 100644 index 0000000..bcca340 --- /dev/null +++ b/VOC/labels/val/04520.txt @@ -0,0 +1 @@ +1 0.5484375 0.38229166666666664 0.2 0.29791666666666666 diff --git a/VOC/labels/val/04530.txt b/VOC/labels/val/04530.txt new file mode 100644 index 0000000..73b64a5 --- /dev/null +++ b/VOC/labels/val/04530.txt @@ -0,0 +1,2 @@ +1 0.2996987951807229 0.395 0.32228915662650603 0.28600000000000003 +1 0.6912650602409639 0.167 0.3283132530120482 0.298 diff --git a/VOC/labels/val/04540.txt b/VOC/labels/val/04540.txt new file mode 100644 index 0000000..cdb140b --- /dev/null +++ b/VOC/labels/val/04540.txt @@ -0,0 +1 @@ +1 0.52734375 0.27719665271966526 0.41015625 0.402370990237099 diff --git a/VOC/labels/val/04550.txt b/VOC/labels/val/04550.txt new file mode 100644 index 0000000..a72ca28 --- /dev/null +++ b/VOC/labels/val/04550.txt @@ -0,0 +1,2 @@ +1 0.322265625 0.2847222222222222 0.13671875 0.2534722222222222 +1 0.83837890625 0.34809027777777773 0.1162109375 0.2065972222222222 diff --git a/VOC/labels/val/04560.txt b/VOC/labels/val/04560.txt new file mode 100644 index 0000000..f64eb94 --- /dev/null +++ b/VOC/labels/val/04560.txt @@ -0,0 +1 @@ +1 0.45703125 0.18565683646112602 0.36328125 0.2828418230563003 diff --git a/VOC/labels/val/04570.txt b/VOC/labels/val/04570.txt new file mode 100644 index 0000000..201e2a2 --- /dev/null +++ b/VOC/labels/val/04570.txt @@ -0,0 +1 @@ +1 0.79345703125 0.4834217506631299 0.2392578125 0.34615384615384615 diff --git a/VOC/labels/val/04580.txt b/VOC/labels/val/04580.txt new file mode 100644 index 0000000..05c9af7 --- /dev/null +++ b/VOC/labels/val/04580.txt @@ -0,0 +1 @@ +1 0.48583984375 0.43769470404984423 0.3466796875 0.778816199376947 diff --git a/VOC/labels/val/04600.txt b/VOC/labels/val/04600.txt new file mode 100644 index 0000000..df1ae7e --- /dev/null +++ b/VOC/labels/val/04600.txt @@ -0,0 +1,2 @@ +1 0.18310546875 0.3340643274853801 0.1044921875 0.1739766081871345 +1 0.724609375 0.3384502923976608 0.12109375 0.20906432748538012 diff --git a/VOC/labels/val/04620.txt b/VOC/labels/val/04620.txt new file mode 100644 index 0000000..fbd601d --- /dev/null +++ b/VOC/labels/val/04620.txt @@ -0,0 +1,2 @@ +1 0.24166666666666667 0.3814814814814815 0.175 0.5037037037037038 +1 0.553125 0.3592592592592593 0.22708333333333333 0.45555555555555555 diff --git a/VOC/labels/val/04630.txt b/VOC/labels/val/04630.txt new file mode 100644 index 0000000..0eccaa7 --- /dev/null +++ b/VOC/labels/val/04630.txt @@ -0,0 +1,2 @@ +1 0.26953125 0.20238095238095238 0.17578125 0.2927170868347339 +1 0.7841796875 0.22408963585434175 0.171875 0.2913165266106443 diff --git a/VOC/labels/val/04640.txt b/VOC/labels/val/04640.txt new file mode 100644 index 0000000..b494000 --- /dev/null +++ b/VOC/labels/val/04640.txt @@ -0,0 +1,2 @@ +1 0.19140625 0.3125 0.376953125 0.4495614035087719 +1 0.5673828125 0.3340643274853801 0.375 0.41666666666666663 diff --git a/VOC/labels/val/04670.txt b/VOC/labels/val/04670.txt new file mode 100644 index 0000000..4ec056e --- /dev/null +++ b/VOC/labels/val/04670.txt @@ -0,0 +1 @@ +1 0.36266666666666664 0.40900000000000003 0.27199999999999996 0.25 diff --git a/VOC/labels/val/04680.txt b/VOC/labels/val/04680.txt new file mode 100644 index 0000000..37e993d --- /dev/null +++ b/VOC/labels/val/04680.txt @@ -0,0 +1 @@ +1 0.46953125 0.403125 0.2515625 0.34791666666666665 diff --git a/VOC/labels/val/04700.txt b/VOC/labels/val/04700.txt new file mode 100644 index 0000000..38ca788 --- /dev/null +++ b/VOC/labels/val/04700.txt @@ -0,0 +1,2 @@ +1 0.3984848484848485 0.429 0.25757575757575757 0.23800000000000002 +1 0.7924242424242425 0.398 0.38484848484848483 0.264 diff --git a/VOC/labels/val/04710.txt b/VOC/labels/val/04710.txt new file mode 100644 index 0000000..0cf4889 --- /dev/null +++ b/VOC/labels/val/04710.txt @@ -0,0 +1,2 @@ +1 0.373046875 0.23697916666666666 0.1328125 0.265625 +1 0.6484375 0.125 0.130859375 0.22916666666666666 diff --git a/VOC/labels/val/04730.txt b/VOC/labels/val/04730.txt new file mode 100644 index 0000000..afb991c --- /dev/null +++ b/VOC/labels/val/04730.txt @@ -0,0 +1 @@ +1 0.58642578125 0.19057377049180327 0.2841796875 0.23946135831381732 diff --git a/VOC/labels/val/04740.txt b/VOC/labels/val/04740.txt new file mode 100644 index 0000000..53a0252 --- /dev/null +++ b/VOC/labels/val/04740.txt @@ -0,0 +1,2 @@ +1 0.126 0.42666666666666664 0.18 0.304 +1 0.712 0.3733333333333333 0.20800000000000002 0.3466666666666667 diff --git a/VOC/labels/val/04760.txt b/VOC/labels/val/04760.txt new file mode 100644 index 0000000..291de94 --- /dev/null +++ b/VOC/labels/val/04760.txt @@ -0,0 +1 @@ +1 0.54609375 0.4145833333333333 0.18906250000000002 0.275 diff --git a/VOC/labels/val/04770.txt b/VOC/labels/val/04770.txt new file mode 100644 index 0000000..cd8c47a --- /dev/null +++ b/VOC/labels/val/04770.txt @@ -0,0 +1 @@ +1 0.38134765625 0.28255675029868577 0.2216796875 0.3548387096774193 diff --git a/VOC/labels/val/04780.txt b/VOC/labels/val/04780.txt new file mode 100644 index 0000000..0a27611 --- /dev/null +++ b/VOC/labels/val/04780.txt @@ -0,0 +1,2 @@ +1 0.65673828125 0.3487951807228916 0.2705078125 0.42530120481927713 +1 0.22119140625 0.27831325301204823 0.2373046875 0.3662650602409639 diff --git a/VOC/labels/val/04810.txt b/VOC/labels/val/04810.txt new file mode 100644 index 0000000..6fff7f1 --- /dev/null +++ b/VOC/labels/val/04810.txt @@ -0,0 +1 @@ +1 0.48681640625 0.470203488372093 0.6943359375 0.9171511627906976 diff --git a/VOC/labels/val/04820.txt b/VOC/labels/val/04820.txt new file mode 100644 index 0000000..8c4a719 --- /dev/null +++ b/VOC/labels/val/04820.txt @@ -0,0 +1,2 @@ +1 0.243 0.364 0.266 0.44 +1 0.863 0.3373333333333333 0.23800000000000002 0.408 diff --git a/VOC/labels/val/04840.txt b/VOC/labels/val/04840.txt new file mode 100644 index 0000000..68bd88c --- /dev/null +++ b/VOC/labels/val/04840.txt @@ -0,0 +1 @@ +1 0.4609375 0.3677083333333333 0.284375 0.46041666666666664 diff --git a/VOC/labels/val/04850.txt b/VOC/labels/val/04850.txt new file mode 100644 index 0000000..7f7a7e9 --- /dev/null +++ b/VOC/labels/val/04850.txt @@ -0,0 +1 @@ +1 0.53076171875 0.3577732518669382 0.5498046875 0.49015614392396467 diff --git a/VOC/labels/val/04860.txt b/VOC/labels/val/04860.txt new file mode 100644 index 0000000..bc53f29 --- /dev/null +++ b/VOC/labels/val/04860.txt @@ -0,0 +1 @@ +1 0.57421875 0.20219966159052452 0.31640625 0.32148900169204736 diff --git a/VOC/labels/val/04890.txt b/VOC/labels/val/04890.txt new file mode 100644 index 0000000..ce5c1f2 --- /dev/null +++ b/VOC/labels/val/04890.txt @@ -0,0 +1 @@ +1 0.41845703125 0.08903712296983758 0.1982421875 0.15371229698375868 diff --git a/VOC/labels/val/04920.txt b/VOC/labels/val/04920.txt new file mode 100644 index 0000000..90cfbd9 --- /dev/null +++ b/VOC/labels/val/04920.txt @@ -0,0 +1 @@ +1 0.565625 0.4114583333333333 0.16875 0.26875 diff --git a/VOC/labels/val/04930.txt b/VOC/labels/val/04930.txt new file mode 100644 index 0000000..d078242 --- /dev/null +++ b/VOC/labels/val/04930.txt @@ -0,0 +1 @@ +1 0.5750000000000001 0.31979166666666664 0.234375 0.3020833333333333 diff --git a/VOC/labels/val/04950.txt b/VOC/labels/val/04950.txt new file mode 100644 index 0000000..650af56 --- /dev/null +++ b/VOC/labels/val/04950.txt @@ -0,0 +1 @@ +1 0.5322265625 0.32098765432098764 0.556640625 0.4314489928525016 diff --git a/VOC/labels/val/04960.txt b/VOC/labels/val/04960.txt new file mode 100644 index 0000000..edbb23d --- /dev/null +++ b/VOC/labels/val/04960.txt @@ -0,0 +1,5 @@ +1 0.2587890625 0.13715277777777776 0.099609375 0.2534722222222222 +1 0.34375 0.2690972222222222 0.076171875 0.20138888888888887 +1 0.53173828125 0.2803819444444444 0.0732421875 0.203125 +1 0.67333984375 0.19791666666666666 0.0947265625 0.2361111111111111 +1 0.796875 0.203125 0.109375 0.2569444444444444 diff --git a/VOC/labels/val/04980.txt b/VOC/labels/val/04980.txt new file mode 100644 index 0000000..e8a8a5d --- /dev/null +++ b/VOC/labels/val/04980.txt @@ -0,0 +1 @@ +1 0.383 0.23199999999999998 0.198 0.3253333333333333 diff --git a/VOC/labels/val/04990.txt b/VOC/labels/val/04990.txt new file mode 100644 index 0000000..d1b2345 --- /dev/null +++ b/VOC/labels/val/04990.txt @@ -0,0 +1 @@ +1 0.5203125000000001 0.4666666666666667 0.203125 0.275 diff --git a/VOC/labels/val/05020.txt b/VOC/labels/val/05020.txt new file mode 100644 index 0000000..96e82a1 --- /dev/null +++ b/VOC/labels/val/05020.txt @@ -0,0 +1 @@ +1 0.5554687500000001 0.428125 0.2078125 0.34375 diff --git a/VOC/labels/val/05050.txt b/VOC/labels/val/05050.txt new file mode 100644 index 0000000..4b20db1 --- /dev/null +++ b/VOC/labels/val/05050.txt @@ -0,0 +1 @@ +1 0.5146484375 0.14344783715012724 0.236328125 0.20165394402035625 diff --git a/VOC/labels/val/05070.txt b/VOC/labels/val/05070.txt new file mode 100644 index 0000000..3cc7545 --- /dev/null +++ b/VOC/labels/val/05070.txt @@ -0,0 +1,3 @@ +1 0.251953125 0.15428764348413235 0.17578125 0.1424713031735314 +1 0.56201171875 0.2025658338960162 0.1533203125 0.12964213369345037 +1 0.8544921875 0.09047940580688725 0.11328125 0.0837272113436867 diff --git a/VOC/labels/val/05080.txt b/VOC/labels/val/05080.txt new file mode 100644 index 0000000..d181923 --- /dev/null +++ b/VOC/labels/val/05080.txt @@ -0,0 +1 @@ +1 0.53369140625 0.38888888888888884 0.3076171875 0.652046783625731 diff --git a/VOC/labels/val/05100.txt b/VOC/labels/val/05100.txt new file mode 100644 index 0000000..5a7b19c --- /dev/null +++ b/VOC/labels/val/05100.txt @@ -0,0 +1 @@ +1 0.52578125 0.5208333333333334 0.2015625 0.3333333333333333 diff --git a/VOC/labels/val/05110.txt b/VOC/labels/val/05110.txt new file mode 100644 index 0000000..dccef92 --- /dev/null +++ b/VOC/labels/val/05110.txt @@ -0,0 +1 @@ +1 0.5125000000000001 0.421875 0.20625000000000002 0.30625 diff --git a/VOC/labels/val/05120.txt b/VOC/labels/val/05120.txt new file mode 100644 index 0000000..3308e8e --- /dev/null +++ b/VOC/labels/val/05120.txt @@ -0,0 +1 @@ +1 0.48779296875 0.4289422452952628 0.7041015625 0.5957170668397145 diff --git a/VOC/labels/val/05170.txt b/VOC/labels/val/05170.txt new file mode 100644 index 0000000..aee6013 --- /dev/null +++ b/VOC/labels/val/05170.txt @@ -0,0 +1 @@ +1 0.62939453125 0.23865300146412885 0.1240234375 0.2108345534407028 diff --git a/VOC/labels/val/05180.txt b/VOC/labels/val/05180.txt new file mode 100644 index 0000000..221e6a7 --- /dev/null +++ b/VOC/labels/val/05180.txt @@ -0,0 +1 @@ +1 0.5085937500000001 0.3229166666666667 0.19843750000000002 0.2916666666666667 diff --git a/VOC/labels/val/05190.txt b/VOC/labels/val/05190.txt new file mode 100644 index 0000000..f370ab9 --- /dev/null +++ b/VOC/labels/val/05190.txt @@ -0,0 +1 @@ +1 0.3408203125 0.38095238095238093 0.34765625 0.550595238095238 diff --git a/VOC/labels/val/05200.txt b/VOC/labels/val/05200.txt new file mode 100644 index 0000000..83eb58b --- /dev/null +++ b/VOC/labels/val/05200.txt @@ -0,0 +1 @@ +1 0.6585937500000001 0.42083333333333334 0.1921875 0.2791666666666667 diff --git a/VOC/labels/val/05210.txt b/VOC/labels/val/05210.txt new file mode 100644 index 0000000..5aa3cc6 --- /dev/null +++ b/VOC/labels/val/05210.txt @@ -0,0 +1 @@ +1 0.5087890625 0.2787878787878788 0.42578125 0.39057239057239057 diff --git a/VOC/labels/val/05230.txt b/VOC/labels/val/05230.txt new file mode 100644 index 0000000..03c2f58 --- /dev/null +++ b/VOC/labels/val/05230.txt @@ -0,0 +1,2 @@ +1 0.37060546875 0.11023255813953489 0.1025390625 0.10697674418604652 +1 0.60302734375 0.1316279069767442 0.1337890625 0.14976744186046512 diff --git a/VOC/labels/val/05260.txt b/VOC/labels/val/05260.txt new file mode 100644 index 0000000..a2b17aa --- /dev/null +++ b/VOC/labels/val/05260.txt @@ -0,0 +1 @@ +1 0.5085937500000001 0.4083333333333333 0.2265625 0.3625 diff --git a/VOC/labels/val/05270.txt b/VOC/labels/val/05270.txt new file mode 100644 index 0000000..e912478 --- /dev/null +++ b/VOC/labels/val/05270.txt @@ -0,0 +1,2 @@ +1 0.2626953125 0.42178594046865103 0.265625 0.18492716909436352 +1 0.62890625 0.22197593413552882 0.3125 0.2045598480050665 diff --git a/VOC/labels/val/05280.txt b/VOC/labels/val/05280.txt new file mode 100644 index 0000000..f5dffca --- /dev/null +++ b/VOC/labels/val/05280.txt @@ -0,0 +1,3 @@ +1 0.162109375 0.22082228116710875 0.140625 0.21883289124668434 +1 0.40869140625 0.3521220159151193 0.1318359375 0.20557029177718833 +1 0.72802734375 0.13660477453580902 0.1513671875 0.24137931034482757 diff --git a/VOC/labels/val/05290.txt b/VOC/labels/val/05290.txt new file mode 100644 index 0000000..cbc89b2 --- /dev/null +++ b/VOC/labels/val/05290.txt @@ -0,0 +1 @@ +1 0.439453125 0.2530463038180341 0.328125 0.3160032493907392 diff --git a/VOC/labels/val/05310.txt b/VOC/labels/val/05310.txt new file mode 100644 index 0000000..f962c89 --- /dev/null +++ b/VOC/labels/val/05310.txt @@ -0,0 +1 @@ +1 0.61640625 0.4635416666666667 0.1921875 0.31875 diff --git a/VOC/labels/val/05320.txt b/VOC/labels/val/05320.txt new file mode 100644 index 0000000..91da03d --- /dev/null +++ b/VOC/labels/val/05320.txt @@ -0,0 +1 @@ +1 0.5234375 0.38645833333333335 0.171875 0.2520833333333333 diff --git a/VOC/labels/val/05330.txt b/VOC/labels/val/05330.txt new file mode 100644 index 0000000..58b3a39 --- /dev/null +++ b/VOC/labels/val/05330.txt @@ -0,0 +1,3 @@ +1 0.14013671875 0.1856763925729443 0.1494140625 0.2679045092838196 +1 0.6513671875 0.15649867374005305 0.119140625 0.1909814323607427 +1 0.83251953125 0.22745358090185674 0.1416015625 0.24005305039787797 diff --git a/VOC/labels/val/05350.txt b/VOC/labels/val/05350.txt new file mode 100644 index 0000000..28ca8d9 --- /dev/null +++ b/VOC/labels/val/05350.txt @@ -0,0 +1,4 @@ +1 0.34800000000000003 0.5493333333333333 0.14 0.21866666666666665 +1 0.455 0.5426666666666666 0.08600000000000001 0.17866666666666667 +1 0.5630000000000001 0.5266666666666666 0.08600000000000001 0.18933333333333333 +1 0.624 0.4066666666666667 0.116 0.19466666666666665 diff --git a/VOC/labels/val/05360.txt b/VOC/labels/val/05360.txt new file mode 100644 index 0000000..a595999 --- /dev/null +++ b/VOC/labels/val/05360.txt @@ -0,0 +1 @@ +1 0.58125 0.3302083333333333 0.1875 0.29375 diff --git a/VOC/labels/val/05370.txt b/VOC/labels/val/05370.txt new file mode 100644 index 0000000..ad56f5d --- /dev/null +++ b/VOC/labels/val/05370.txt @@ -0,0 +1,4 @@ +1 0.1943359375 0.20081967213114754 0.1953125 0.30327868852459017 +1 0.40869140625 0.40505464480874315 0.2197265625 0.48770491803278687 +1 0.609375 0.4692622950819672 0.193359375 0.5286885245901639 +1 0.8291015625 0.34972677595628415 0.251953125 0.5491803278688525 diff --git a/VOC/labels/val/05400.txt b/VOC/labels/val/05400.txt new file mode 100644 index 0000000..27a86c8 --- /dev/null +++ b/VOC/labels/val/05400.txt @@ -0,0 +1,2 @@ +1 0.2626953125 0.14454277286135692 0.1640625 0.28023598820059 +1 0.66943359375 0.2411504424778761 0.1357421875 0.23156342182890854 diff --git a/VOC/labels/val/05420.txt b/VOC/labels/val/05420.txt new file mode 100644 index 0000000..ef74928 --- /dev/null +++ b/VOC/labels/val/05420.txt @@ -0,0 +1,5 @@ +1 0.23500000000000001 0.281524926686217 0.094 0.187683284457478 +1 0.385 0.32991202346041054 0.094 0.17302052785923755 +1 0.516 0.30791788856304986 0.1 0.187683284457478 +1 0.644 0.22140762463343108 0.112 0.19648093841642228 +1 0.752 0.17302052785923755 0.10400000000000001 0.21114369501466276 diff --git a/VOC/labels/val/05430.txt b/VOC/labels/val/05430.txt new file mode 100644 index 0000000..cbb5871 --- /dev/null +++ b/VOC/labels/val/05430.txt @@ -0,0 +1 @@ +1 0.5234375 0.5010416666666666 0.21250000000000002 0.34375 diff --git a/VOC/labels/val/05440.txt b/VOC/labels/val/05440.txt new file mode 100644 index 0000000..22ad6b1 --- /dev/null +++ b/VOC/labels/val/05440.txt @@ -0,0 +1 @@ +1 0.5554687500000001 0.421875 0.1953125 0.26875 diff --git a/VOC/labels/val/05460.txt b/VOC/labels/val/05460.txt new file mode 100644 index 0000000..251a1c6 --- /dev/null +++ b/VOC/labels/val/05460.txt @@ -0,0 +1 @@ +1 0.46015625000000004 0.3927083333333333 0.2265625 0.3020833333333333 diff --git a/VOC/labels/val/05470.txt b/VOC/labels/val/05470.txt new file mode 100644 index 0000000..b7fd363 --- /dev/null +++ b/VOC/labels/val/05470.txt @@ -0,0 +1 @@ +1 0.4912109375 0.14778645833333331 0.29296875 0.23567708333333331 diff --git a/VOC/labels/val/05480.txt b/VOC/labels/val/05480.txt new file mode 100644 index 0000000..c87fa2b --- /dev/null +++ b/VOC/labels/val/05480.txt @@ -0,0 +1 @@ +1 0.5380859375 0.23046875 0.3125 0.22916666666666666 diff --git a/VOC/labels/val/05510.txt b/VOC/labels/val/05510.txt new file mode 100644 index 0000000..b023fb4 --- /dev/null +++ b/VOC/labels/val/05510.txt @@ -0,0 +1,2 @@ +1 0.24951171875 0.09556962025316455 0.0986328125 0.14303797468354432 +1 0.74072265625 0.2569620253164557 0.2763671875 0.4 diff --git a/VOC/labels/val/05520.txt b/VOC/labels/val/05520.txt new file mode 100644 index 0000000..4f4f295 --- /dev/null +++ b/VOC/labels/val/05520.txt @@ -0,0 +1 @@ +1 0.462890625 0.3911516853932584 0.525390625 0.5323033707865168 diff --git a/VOC/labels/val/05530.txt b/VOC/labels/val/05530.txt new file mode 100644 index 0000000..dd8c3b0 --- /dev/null +++ b/VOC/labels/val/05530.txt @@ -0,0 +1 @@ +1 0.4859375 0.33229166666666665 0.1875 0.29791666666666666 diff --git a/VOC/labels/val/05540.txt b/VOC/labels/val/05540.txt new file mode 100644 index 0000000..f34a793 --- /dev/null +++ b/VOC/labels/val/05540.txt @@ -0,0 +1 @@ +1 0.56640625 0.3489583333333333 0.2234375 0.32708333333333334 diff --git a/VOC/labels/val/05550.txt b/VOC/labels/val/05550.txt new file mode 100644 index 0000000..c604619 --- /dev/null +++ b/VOC/labels/val/05550.txt @@ -0,0 +1 @@ +1 0.56689453125 0.165860400829302 0.3388671875 0.2736696613683483 diff --git a/VOC/labels/val/05580.txt b/VOC/labels/val/05580.txt new file mode 100644 index 0000000..a2e1c11 --- /dev/null +++ b/VOC/labels/val/05580.txt @@ -0,0 +1 @@ +1 0.4091796875 0.3192771084337349 0.337890625 0.5153949129852744 diff --git a/VOC/labels/val/05590.txt b/VOC/labels/val/05590.txt new file mode 100644 index 0000000..f13d28b --- /dev/null +++ b/VOC/labels/val/05590.txt @@ -0,0 +1 @@ +1 0.4990234375 0.3113465481886535 0.541015625 0.5051264524948735 diff --git a/VOC/labels/val/05610.txt b/VOC/labels/val/05610.txt new file mode 100644 index 0000000..7417f7f --- /dev/null +++ b/VOC/labels/val/05610.txt @@ -0,0 +1 @@ +1 0.55 0.3645833333333333 0.19375 0.2875 diff --git a/VOC/labels/val/05620.txt b/VOC/labels/val/05620.txt new file mode 100644 index 0000000..cfd6c6c --- /dev/null +++ b/VOC/labels/val/05620.txt @@ -0,0 +1 @@ +1 0.498046875 0.3442265795206972 0.392578125 0.38344226579520696 diff --git a/VOC/labels/val/05630.txt b/VOC/labels/val/05630.txt new file mode 100644 index 0000000..b4c3078 --- /dev/null +++ b/VOC/labels/val/05630.txt @@ -0,0 +1 @@ +1 0.585 0.216 0.074 0.12266666666666666 diff --git a/VOC/labels/val/05680.txt b/VOC/labels/val/05680.txt new file mode 100644 index 0000000..db2d9cf --- /dev/null +++ b/VOC/labels/val/05680.txt @@ -0,0 +1 @@ +1 0.5673828125 0.21141185076810534 0.265625 0.24140453547915144 diff --git a/VOC/labels/val/05690.txt b/VOC/labels/val/05690.txt new file mode 100644 index 0000000..41d5e4f --- /dev/null +++ b/VOC/labels/val/05690.txt @@ -0,0 +1 @@ +1 0.46875 0.46458333333333335 0.225 0.3458333333333333 diff --git a/VOC/labels/val/05700.txt b/VOC/labels/val/05700.txt new file mode 100644 index 0000000..59a109b --- /dev/null +++ b/VOC/labels/val/05700.txt @@ -0,0 +1 @@ +1 0.6261261261261262 0.17200000000000001 0.24324324324324323 0.18 diff --git a/VOC/labels/val/05710.txt b/VOC/labels/val/05710.txt new file mode 100644 index 0000000..fd664ba --- /dev/null +++ b/VOC/labels/val/05710.txt @@ -0,0 +1 @@ +1 0.5140625 0.3385416666666667 0.16875 0.23958333333333334 diff --git a/VOC/labels/val/05730.txt b/VOC/labels/val/05730.txt new file mode 100644 index 0000000..0b1ff52 --- /dev/null +++ b/VOC/labels/val/05730.txt @@ -0,0 +1 @@ +1 0.41015625 0.37632978723404253 0.484375 0.5895390070921985 diff --git a/VOC/labels/val/05760.txt b/VOC/labels/val/05760.txt new file mode 100644 index 0000000..88a6b4e --- /dev/null +++ b/VOC/labels/val/05760.txt @@ -0,0 +1 @@ +1 0.48974609375 0.34372652141247184 0.4892578125 0.4380165289256199 diff --git a/VOC/labels/val/05770.txt b/VOC/labels/val/05770.txt new file mode 100644 index 0000000..0e58b27 --- /dev/null +++ b/VOC/labels/val/05770.txt @@ -0,0 +1 @@ +1 0.36083984375 0.1631892697466468 0.1240234375 0.2399403874813711 diff --git a/VOC/labels/val/05780.txt b/VOC/labels/val/05780.txt new file mode 100644 index 0000000..780d4d8 --- /dev/null +++ b/VOC/labels/val/05780.txt @@ -0,0 +1 @@ +1 0.5007812500000001 0.5239583333333333 0.2265625 0.31875 diff --git a/VOC/labels/val/05790.txt b/VOC/labels/val/05790.txt new file mode 100644 index 0000000..1f0fcac --- /dev/null +++ b/VOC/labels/val/05790.txt @@ -0,0 +1 @@ +1 0.46044921875 0.2324128862590401 0.5302734375 0.4635108481262328 diff --git a/VOC/labels/val/05840.txt b/VOC/labels/val/05840.txt new file mode 100644 index 0000000..0857839 --- /dev/null +++ b/VOC/labels/val/05840.txt @@ -0,0 +1 @@ +1 0.52578125 0.38229166666666664 0.1609375 0.22708333333333333 diff --git a/VOC/labels/val/05850.txt b/VOC/labels/val/05850.txt new file mode 100644 index 0000000..7213e33 --- /dev/null +++ b/VOC/labels/val/05850.txt @@ -0,0 +1 @@ +1 0.533203125 0.3461775585696671 0.62109375 0.5258939580764488 diff --git a/VOC/labels/val/05870.txt b/VOC/labels/val/05870.txt new file mode 100644 index 0000000..8578be2 --- /dev/null +++ b/VOC/labels/val/05870.txt @@ -0,0 +1 @@ +1 0.474609375 0.3228423101881895 0.55859375 0.49383517196625565 diff --git a/VOC/labels/val/05880.txt b/VOC/labels/val/05880.txt new file mode 100644 index 0000000..bf752b5 --- /dev/null +++ b/VOC/labels/val/05880.txt @@ -0,0 +1,2 @@ +1 0.1875 0.2564814814814815 0.20833333333333334 0.38333333333333336 +1 0.7854166666666667 0.3194444444444445 0.17708333333333334 0.37222222222222223 diff --git a/VOC/labels/val/05890.txt b/VOC/labels/val/05890.txt new file mode 100644 index 0000000..6d1f431 --- /dev/null +++ b/VOC/labels/val/05890.txt @@ -0,0 +1 @@ +1 0.540625 0.3833333333333333 0.19375 0.2833333333333333 diff --git a/VOC/labels/val/05910.txt b/VOC/labels/val/05910.txt new file mode 100644 index 0000000..40bc758 --- /dev/null +++ b/VOC/labels/val/05910.txt @@ -0,0 +1 @@ +1 0.53125 0.30045572916666663 0.595703125 0.482421875 diff --git a/VOC/labels/val/05920.txt b/VOC/labels/val/05920.txt new file mode 100644 index 0000000..6fb9457 --- /dev/null +++ b/VOC/labels/val/05920.txt @@ -0,0 +1 @@ +1 0.4921875 0.3772391991570074 0.458984375 0.613277133825079 diff --git a/VOC/labels/val/05960.txt b/VOC/labels/val/05960.txt new file mode 100644 index 0000000..df69c0e --- /dev/null +++ b/VOC/labels/val/05960.txt @@ -0,0 +1,2 @@ +1 0.3067708333333333 0.40185185185185185 0.19479166666666667 0.4518518518518519 +1 0.73125 0.2916666666666667 0.24166666666666667 0.5092592592592593 diff --git a/VOC/labels/val/06000.txt b/VOC/labels/val/06000.txt new file mode 100644 index 0000000..c9dba25 --- /dev/null +++ b/VOC/labels/val/06000.txt @@ -0,0 +1 @@ +1 0.43603515625 0.29876977152899825 0.4208984375 0.4586994727592267 diff --git a/VOC/labels/val/06010.txt b/VOC/labels/val/06010.txt new file mode 100644 index 0000000..6bdfe40 --- /dev/null +++ b/VOC/labels/val/06010.txt @@ -0,0 +1 @@ +1 0.5593750000000001 0.5239583333333333 0.1625 0.24375 diff --git a/VOC/labels/val/06030.txt b/VOC/labels/val/06030.txt new file mode 100644 index 0000000..be093e3 --- /dev/null +++ b/VOC/labels/val/06030.txt @@ -0,0 +1,2 @@ +1 0.50830078125 0.2524578651685393 0.3095703125 0.2928370786516854 +1 0.10595703125 0.300561797752809 0.2060546875 0.1797752808988764 diff --git a/VOC/labels/val/06050.txt b/VOC/labels/val/06050.txt new file mode 100644 index 0000000..e159ebe --- /dev/null +++ b/VOC/labels/val/06050.txt @@ -0,0 +1 @@ +1 0.5864022662889519 0.242 0.4645892351274788 0.392 diff --git a/VOC/labels/val/06090.txt b/VOC/labels/val/06090.txt new file mode 100644 index 0000000..ebf2206 --- /dev/null +++ b/VOC/labels/val/06090.txt @@ -0,0 +1 @@ +1 0.455078125 0.2099609375 0.330078125 0.22981770833333331 diff --git a/VOC/labels/val/06110.txt b/VOC/labels/val/06110.txt new file mode 100644 index 0000000..23f8ce5 --- /dev/null +++ b/VOC/labels/val/06110.txt @@ -0,0 +1 @@ +1 0.4927083333333333 0.34074074074074073 0.18333333333333332 0.4444444444444445 diff --git a/VOC/labels/val/06120.txt b/VOC/labels/val/06120.txt new file mode 100644 index 0000000..827eb8e --- /dev/null +++ b/VOC/labels/val/06120.txt @@ -0,0 +1 @@ +1 0.6062500000000001 0.4041666666666667 0.184375 0.2833333333333333 diff --git a/VOC/labels/val/06150.txt b/VOC/labels/val/06150.txt new file mode 100644 index 0000000..522a1a0 --- /dev/null +++ b/VOC/labels/val/06150.txt @@ -0,0 +1 @@ +1 0.373046875 0.24826388888888887 0.21875 0.38888888888888884 diff --git a/VOC/labels/val/06160.txt b/VOC/labels/val/06160.txt new file mode 100644 index 0000000..1e6fa4d --- /dev/null +++ b/VOC/labels/val/06160.txt @@ -0,0 +1 @@ +1 0.525 0.46458333333333335 0.18125000000000002 0.2375 diff --git a/VOC/labels/val/06170.txt b/VOC/labels/val/06170.txt new file mode 100644 index 0000000..92c3314 --- /dev/null +++ b/VOC/labels/val/06170.txt @@ -0,0 +1,4 @@ +1 0.1552734375 0.33421750663129973 0.16015625 0.2546419098143236 +1 0.35009765625 0.366710875331565 0.1787109375 0.22413793103448273 +1 0.6826171875 0.5 0.12109375 0.18302387267904507 +1 0.8349609375 0.24734748010610078 0.16796875 0.23209549071618035 diff --git a/VOC/labels/val/06180.txt b/VOC/labels/val/06180.txt new file mode 100644 index 0000000..2e163ac --- /dev/null +++ b/VOC/labels/val/06180.txt @@ -0,0 +1 @@ +1 0.512 0.41876750700280113 0.356 0.6302521008403361 diff --git a/VOC/labels/val/06190.txt b/VOC/labels/val/06190.txt new file mode 100644 index 0000000..9cda0d1 --- /dev/null +++ b/VOC/labels/val/06190.txt @@ -0,0 +1 @@ +1 0.48671875000000003 0.5583333333333333 0.16718750000000002 0.2916666666666667 diff --git a/VOC/labels/val/06210.txt b/VOC/labels/val/06210.txt new file mode 100644 index 0000000..678d7fd --- /dev/null +++ b/VOC/labels/val/06210.txt @@ -0,0 +1,2 @@ +1 0.5 0.306 0.1111111111111111 0.10400000000000001 +1 0.3333333333333333 0.431 0.0960960960960961 0.074 diff --git a/VOC/labels/val/06240.txt b/VOC/labels/val/06240.txt new file mode 100644 index 0000000..2d3db50 --- /dev/null +++ b/VOC/labels/val/06240.txt @@ -0,0 +1 @@ +1 0.50341796875 0.18315018315018314 0.3115234375 0.295970695970696 diff --git a/VOC/labels/val/06260.txt b/VOC/labels/val/06260.txt new file mode 100644 index 0000000..7905467 --- /dev/null +++ b/VOC/labels/val/06260.txt @@ -0,0 +1 @@ +1 0.52783203125 0.46354166666666663 0.5380859375 0.8880208333333333 diff --git a/VOC/labels/val/06270.txt b/VOC/labels/val/06270.txt new file mode 100644 index 0000000..b158df6 --- /dev/null +++ b/VOC/labels/val/06270.txt @@ -0,0 +1 @@ +1 0.62 0.5093333333333333 0.328 0.5066666666666666 diff --git a/VOC/labels/val/06280.txt b/VOC/labels/val/06280.txt new file mode 100644 index 0000000..1408227 --- /dev/null +++ b/VOC/labels/val/06280.txt @@ -0,0 +1,3 @@ +1 0.19970703125 0.24342105263157893 0.1142578125 0.20614035087719296 +1 0.4150390625 0.34502923976608185 0.13671875 0.2046783625730994 +1 0.8046875 0.293859649122807 0.150390625 0.23391812865497075 diff --git a/VOC/labels/val/06290.txt b/VOC/labels/val/06290.txt new file mode 100644 index 0000000..5255918 --- /dev/null +++ b/VOC/labels/val/06290.txt @@ -0,0 +1 @@ +1 0.52587890625 0.22787318361955086 0.2255859375 0.32100396301188905 diff --git a/VOC/labels/val/06300.txt b/VOC/labels/val/06300.txt new file mode 100644 index 0000000..2320759 --- /dev/null +++ b/VOC/labels/val/06300.txt @@ -0,0 +1 @@ +1 0.58544921875 0.33088235294117646 0.2802734375 0.4852941176470588 diff --git a/VOC/labels/val/06340.txt b/VOC/labels/val/06340.txt new file mode 100644 index 0000000..32d6d2a --- /dev/null +++ b/VOC/labels/val/06340.txt @@ -0,0 +1,2 @@ +1 0.397 0.4532085561497326 0.114 0.17379679144385027 +1 0.6910000000000001 0.4304812834224599 0.11800000000000001 0.2032085561497326 diff --git a/VOC/labels/val/06370.txt b/VOC/labels/val/06370.txt new file mode 100644 index 0000000..69b58b9 --- /dev/null +++ b/VOC/labels/val/06370.txt @@ -0,0 +1 @@ +1 0.5859375 0.3104166666666667 0.178125 0.26666666666666666 diff --git a/VOC/labels/val/06380.txt b/VOC/labels/val/06380.txt new file mode 100644 index 0000000..a6129e7 --- /dev/null +++ b/VOC/labels/val/06380.txt @@ -0,0 +1 @@ +1 0.49169921875 0.29942418426103645 0.5986328125 0.46705054382597566 diff --git a/VOC/labels/val/06390.txt b/VOC/labels/val/06390.txt new file mode 100644 index 0000000..57bc40b --- /dev/null +++ b/VOC/labels/val/06390.txt @@ -0,0 +1 @@ +1 0.5328125 0.40729166666666666 0.209375 0.34791666666666665 diff --git a/VOC/labels/val/06400.txt b/VOC/labels/val/06400.txt new file mode 100644 index 0000000..cb4a36e --- /dev/null +++ b/VOC/labels/val/06400.txt @@ -0,0 +1 @@ +1 0.5875 0.384375 0.15625 0.23541666666666666 diff --git a/VOC/labels/val/06430.txt b/VOC/labels/val/06430.txt new file mode 100644 index 0000000..e030ab9 --- /dev/null +++ b/VOC/labels/val/06430.txt @@ -0,0 +1 @@ +1 0.63818359375 0.3228423101881895 0.5283203125 0.4899415963659961 diff --git a/VOC/labels/val/06450.txt b/VOC/labels/val/06450.txt new file mode 100644 index 0000000..6bd4aee --- /dev/null +++ b/VOC/labels/val/06450.txt @@ -0,0 +1 @@ +1 0.23900000000000002 0.17837078651685392 0.23800000000000002 0.3455056179775281 diff --git a/VOC/labels/val/06460.txt b/VOC/labels/val/06460.txt new file mode 100644 index 0000000..9896a61 --- /dev/null +++ b/VOC/labels/val/06460.txt @@ -0,0 +1 @@ +1 0.565625 0.359375 0.171875 0.26458333333333334 diff --git a/VOC/labels/val/06470.txt b/VOC/labels/val/06470.txt new file mode 100644 index 0000000..47cd253 --- /dev/null +++ b/VOC/labels/val/06470.txt @@ -0,0 +1 @@ +1 0.57421875 0.276239907727797 0.291015625 0.3771626297577855 diff --git a/VOC/labels/val/06480.txt b/VOC/labels/val/06480.txt new file mode 100644 index 0000000..25b32cd --- /dev/null +++ b/VOC/labels/val/06480.txt @@ -0,0 +1 @@ +1 0.4755859375 0.2551948051948052 0.333984375 0.274025974025974 diff --git a/VOC/labels/val/06490.txt b/VOC/labels/val/06490.txt new file mode 100644 index 0000000..c49b3af --- /dev/null +++ b/VOC/labels/val/06490.txt @@ -0,0 +1,3 @@ +1 0.182 0.44266666666666665 0.12 0.21333333333333332 +1 0.435 0.41333333333333333 0.134 0.20266666666666666 +1 0.789 0.44 0.178 0.26666666666666666 diff --git a/__pycache__/test.cpython-38.pyc b/__pycache__/test.cpython-38.pyc index 5ce85a8..1073b85 100644 Binary files a/__pycache__/test.cpython-38.pyc and b/__pycache__/test.cpython-38.pyc differ diff --git a/app.py b/app.py new file mode 100644 index 0000000..0ce818b --- /dev/null +++ b/app.py @@ -0,0 +1,49 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# @Author : linjie +from flask import Flask, render_template, Response, request, session, redirect, url_for, send_from_directory, flash +from werkzeug.utils import secure_filename +from detect import * +import os +import torch +from importlib import import_module +# import camera driver +if os.environ.get('CAMERA'): + Camera = import_module('camera_' + os.environ['CAMERA']).Camera +else: + from yolov5_flask import Camera +# from flack_cors import * + +app = Flask(__name__) +# UPLOAD_FOLDER = "C:\Users\Arpit Sharma\Desktop\Friendship goals\content\yolov5\static\uploads" +DETECTION_FOLDER = r'./static/detections' +# app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER +#app.config['DETECTION_FOLDER'] = DETECTION_FOLDER + + + + +@app.route('/index') +def index(): + """Video streaming home page.""" + return render_template('index.html') + +def gen(camera): + """Video streaming generator function.""" + while True: + frame = camera.get_frame() + yield (b'--frame\r\n' + b'Content-Type: image/jpeg\r\n\r\n' + frame + b'\r\n') + +@app.route('/video_feed') +def video_feed(): + """Video streaming route. Put this in the src attribute of an img tag.""" + return Response(gen(Camera()), + mimetype='multipart/x-mixed-replace; boundary=frame') + + + + + +if __name__ == "__main__": + app.run(debug = True) diff --git a/base_camera.py b/base_camera.py new file mode 100644 index 0000000..eab9783 --- /dev/null +++ b/base_camera.py @@ -0,0 +1,107 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# @Author : linjie +import time +import threading +try: + from greenlet import getcurrent as get_ident +except ImportError: + try: + from thread import get_ident + except ImportError: + from _thread import get_ident + + +class CameraEvent(object): + """An Event-like class that signals all active clients when a new frame is + available. + """ + def __init__(self): + self.events = {} + + def wait(self): + """Invoked from each client's thread to wait for the next frame.""" + ident = get_ident() + if ident not in self.events: + # this is a new client + # add an entry for it in the self.events dict + # each entry has two elements, a threading.Event() and a timestamp + self.events[ident] = [threading.Event(), time.time()] + return self.events[ident][0].wait() + + def set(self): + """Invoked by the camera thread when a new frame is available.""" + now = time.time() + remove = None + for ident, event in self.events.items(): + if not event[0].isSet(): + # if this client's event is not set, then set it + # also update the last set timestamp to now + event[0].set() + event[1] = now + else: + # if the client's event is already set, it means the client + # did not process a previous frame + # if the event stays set for more than 5 seconds, then assume + # the client is gone and remove it + if now - event[1] > 5: + remove = ident + if remove: + del self.events[remove] + + def clear(self): + """Invoked from each client's thread after a frame was processed.""" + self.events[get_ident()][0].clear() + + +class BaseCamera(object): + thread = None # background thread that reads frames from camera + frame = None # current frame is stored here by background thread + last_access = 0 # time of last client access to the camera + event = CameraEvent() + + def __init__(self): + """Start the background camera thread if it isn't running yet.""" + if BaseCamera.thread is None: + BaseCamera.last_access = time.time() + + # start background frame thread + BaseCamera.thread = threading.Thread(target=self._thread) + BaseCamera.thread.start() + + # wait until frames are available + while self.get_frame() is None: + time.sleep(0) + + def get_frame(self): + """Return the current camera frame.""" + BaseCamera.last_access = time.time() + + # wait for a signal from the camera thread + BaseCamera.event.wait() + BaseCamera.event.clear() + + return BaseCamera.frame + + @staticmethod + def frames(): + """"Generator that returns frames from the camera.""" + raise RuntimeError('Must be implemented by subclasses.') + + @classmethod + def _thread(cls): + """Camera background thread.""" + print('Starting camera thread.') + frames_iterator = cls.frames() + for frame in frames_iterator: + BaseCamera.frame = frame + BaseCamera.event.set() # send signal to clients + time.sleep(0) + + # if there hasn't been any clients asking for frames in + # the last 10 seconds then stop the thread + if time.time() - BaseCamera.last_access > 10: + frames_iterator.close() + print('Stopping camera thread due to inactivity.') + break + BaseCamera.thread = None diff --git a/best.pt b/best.pt new file mode 100644 index 0000000..32e0083 Binary files /dev/null and b/best.pt differ diff --git a/camera.py b/camera.py new file mode 100644 index 0000000..7c1017e --- /dev/null +++ b/camera.py @@ -0,0 +1,257 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# @Author : linjie +# detection: 基于yolov5+deepsort(目标跟踪)+Flask Video Streaming实现浏览器打开摄像头 进行目标跟踪 +import os +import cv2 +from base_camera import BaseCamera +from models.experimental import attempt_load +import torch.backends.cudnn as cudnn +import torch +import torch.nn as nn +import torchvision +import numpy as np +import argparse +from utils.datasets import * +from utils.utils import * +from utils.torch_utils import select_device, load_classifier, time_synchronized +from flask import Flask,url_for +from log import Logger + +from deep_sort_pytorch.deep_sort import DeepSort +from deep_sort_pytorch.utils.parser import get_config + +class Camera(BaseCamera): + + video_source = 0 + palette = (2 ** 11 - 1, 2 ** 15 - 1, 2 ** 20 - 1) + #video_source = 0 + def __init__(self): + if os.environ.get('OPENCV_CAMERA_SOURCE'): + print('走了吗') + Camera.set_video_source(int(os.environ['OPENCV_CAMERA_SOURCE'])) + super(Camera, self).__init__() + print('走了') + @staticmethod + def set_video_source(source): + Camera.video_source = source + + @staticmethod + def bbox_rel(*xyxy): + """" Calculates the relative bounding box from absolute pixel values. """ + bbox_left = min([xyxy[0].item(), xyxy[2].item()]) + bbox_top = min([xyxy[1].item(), xyxy[3].item()]) + bbox_w = abs(xyxy[0].item() - xyxy[2].item()) + bbox_h = abs(xyxy[1].item() - xyxy[3].item()) + x_c = (bbox_left + bbox_w / 2) + y_c = (bbox_top + bbox_h / 2) + w = bbox_w + h = bbox_h + return x_c, y_c, w, h + + @staticmethod + def compute_color_for_labels(label): + """ + Simple function that adds fixed color depending on the class + """ + color = [int((p * (label ** 2 - label + 1)) % 255) for p in Camera.palette] + return tuple(color) + # @staticmethod + # def people_appeal1(): + # a = 'people' + # yield a + @staticmethod + def draw_boxes(img, bbox, cls_names, scores, identities=None, offset=(0,0)): + for i, box in enumerate(bbox): + x1, y1, x2, y2 = [int(i) for i in box] + x1 += offset[0] + x2 += offset[0] + y1 += offset[1] + y2 += offset[1] + # box text and bar + id = int(identities[i]) if identities is not None else 0 + color = Camera.compute_color_for_labels(id) + label = '%d %s %d' % (id, cls_names[i], scores[i]) + label += '%' + print("{0}号人物出现!========================================".format(id)) + t_size = cv2.getTextSize(label, cv2.FONT_HERSHEY_PLAIN, 2, 2)[0] + cv2.rectangle(img, (x1, y1), (x2, y2), color, 3) + cv2.rectangle( + img, (x1, y1), (x1 + t_size[0] + 3, y1 + t_size[1] + 4), color, -1) + cv2.putText(img, label, (x1, y1 + + t_size[1] + 4), cv2.FONT_HERSHEY_PLAIN, 2, [255, 255, 255], 2) + return img + @staticmethod + def frames(): + logger = Logger() + print('初始化过了,。。。。。') + camera = cv2.VideoCapture(Camera.video_source) + if not camera.isOpened(): + raise RuntimeError('Could not start camera.') + + out, weights, imgsz = \ + '.inference/output', 'weights/yolov5s.pt', 640 + source = "0" + # print(source) + # print(type(source)) + webcam = source.isnumeric() + # print('看看webcam:{0}'.format(webcam)) + ''' + 初始化deepsort + ''' + # initialize deepsort + cfg = get_config() + cfg.merge_from_file('deep_sort_pytorch/configs/deep_sort.yaml') + deepsort = DeepSort(cfg.DEEPSORT.REID_CKPT, + max_dist=cfg.DEEPSORT.MAX_DIST, min_confidence=cfg.DEEPSORT.MIN_CONFIDENCE, + nms_max_overlap=cfg.DEEPSORT.NMS_MAX_OVERLAP, + max_iou_distance=cfg.DEEPSORT.MAX_IOU_DISTANCE, + max_age=cfg.DEEPSORT.MAX_AGE, n_init=cfg.DEEPSORT.N_INIT, nn_budget=cfg.DEEPSORT.NN_BUDGET, + use_cuda=True) + + + + + device = torch_utils.select_device() + # print(weights) + # print(os.getcwd()) + if os.path.exists(out): + shutil.rmtree(out) # delete output folder + os.makedirs(out) # make new output folder + #shutil.rmtree(out) + # Load model + # google_utils.attempt_download(weights) + # model = torch.load(weights, map_location=device)['model'] + model = attempt_load(weights, map_location=device) # load FP32 model + model.to(device).eval() + + # Second-stage classifier + classify = False + if classify: + modelc = load_classifier(name='resnet101', n=2) # initialize + modelc.load_state_dict(torch.load('weights/resnet101.pt', map_location=device)['model']) # load weights + modelc.to(device).eval() + + # Half precision + half = False and device.type != 'cpu' + # print('half = ' + str(half)) + + if half: + model.half() + + # Set Dataloader + vid_path, vid_writer = None, None + # #if webcam: + # view_img = True + # cudnn.benchmark = True # set True to speed up constant image size inference + # dataset = LoadStreams(source, img_size=imgsz) + # else: + # save_img = True + # # # 如果检测视频的时候想显示出来,可以在这里加一行view_img = True + # view_img = True + # dataset = LoadImages(source, img_size=imgsz) + # vid_path, vid_writer = None, None + #dataset = LoadImages(source, img_size=imgsz) + dataset = LoadStreams(source, img_size=imgsz) + # print('看看dataset:{0}'.format(dataset)) + names = model.names if hasattr(model, 'names') else model.modules.names + # print('----') + # print(names) + colors = [[random.randint(0, 255) for _ in range(3)] for _ in range(len(names))] + + # Run inference + t0 = time.time() + img = torch.zeros((1, 3, imgsz, imgsz), device=device) # init img + _ = model(img.half() if half else img) if device.type != 'cpu' else None # run once + for frame_idx, (path, img, im0s, vid_cap) in enumerate(dataset): + # print('path:{0}'.format(path)) + # print('im0s:{0}'.format(im0s)) + # print('im0s类型:{0}'.format(type(im0s))) + img = torch.from_numpy(img).to(device) + img = img.half() if half else img.float() # uint8 to fp16/32 + img /= 255.0 # 0 - 255 to 0.0 - 1.0 + if img.ndimension() == 3: + img = img.unsqueeze(0) + + # Inference + t1 = torch_utils.time_synchronized() + pred = model(img, augment=False)[0] + + # Apply NMS + pred = non_max_suppression(pred, 0.4, 0.5, + fast=True, classes=None, agnostic=False) + t2 = torch_utils.time_synchronized() + + # Apply Classifier + if classify: + pred = apply_classifier(pred, modelc, img, im0s) + + for i, det in enumerate(pred): # detections per image + #p, s, im0 = path, '', im0s + p, s, im0 = path[i], '%g: ' % i, im0s[i].copy() + #save_path = str(Path(out) / Path(p).name) + s += '%gx%g ' % img.shape[2:] # print string + #gn = torch.tensor(im0.shape)[[1, 0, 1, 0]] #  normalization gain whwh + if det is not None and len(det): + # Rescale boxes from img_size to im0 size + det[:, :4] = scale_coords(img.shape[2:], det[:, :4], im0.shape).round() + + #for c in det[:, -1].unique(): #probably error with torch 1.5 + for c in det[:, -1].detach().unique(): + n = (det[:, -1] == c).sum() # detections per class + s += '%g %s, ' % (n, names[int(c)]) # add to string + + # --- linjie + bbox_xywh = [] + confs = [] + clses = [] + # for *xyxy, conf, cls in det: + # label = '%s %.2f' % (names[int(cls)], conf) + # plot_one_box(xyxy, im0, label=label, color=colors[int(cls)], line_thickness=3) + # Write results + for *xyxy, conf, cls in reversed(det): + # -- linjie deepsort + x_c, y_c, bbox_w, bbox_h = Camera.bbox_rel(*xyxy) + obj = [x_c, y_c, bbox_w, bbox_h] + bbox_xywh.append(obj) + confs.append([conf.item()]) + clses.append([cls.item()]) + + label = '%s %.2f' % (names[int(cls)], conf) + print('看看这次打的标签:{0}'.format(label)) + + #plot_one_box(xyxy, im0, label=label, color=colors[int(cls)], line_thickness=3) + # 判断标签是否为人 --linjie + if label is not None: + if (label.split())[0] == 'person': + logger.info('当前进程:{0}.遇到了人'.format(os.getpid())) + #print('标签是人') + # distancing(people_coords, im0, dist_thres_lim=(200, 250)) + # people_coords.append(xyxy) + #plot_one_box(xyxy, im0, line_thickness=3) + plot_dots_on_people(xyxy, im0) + # ---linjie deepsort + xywhs = torch.Tensor(bbox_xywh) + confss = torch.Tensor(confs) + clses = torch.Tensor(clses) + outputs = deepsort.update(xywhs, confss, clses,im0) + # draw boxes for visualization + if len(outputs) > 0: + bbox_tlwh = [] + bbox_xyxy = outputs[:, :4] + identities = outputs[:, 4] + clses = outputs[:, 5] + scores = outputs[:, 6] + stays = outputs[:, 7] + Camera.draw_boxes(im0, bbox_xyxy, [names[i] for i in clses], scores, identities) + + + print('%sDone. (%.3fs)' % (s, t2 - t1)) + # Stream results + # if view_img: + # cv2.imshow(p, im0) + # if cv2.waitKey(1) == ord('q'): # q to quit + # raise StopIteration + yield cv2.imencode('.jpg', im0)[1].tobytes() + + diff --git a/camera_test.py b/camera_test.py new file mode 100644 index 0000000..aba180f --- /dev/null +++ b/camera_test.py @@ -0,0 +1,243 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# @Author : linjie +import os +import cv2 +from base_camera import BaseCamera +from models.experimental import attempt_load +import torch.backends.cudnn as cudnn +import torch +import torch.nn as nn +import torchvision +import numpy as np +import argparse +from utils.datasets import * +from utils.utils import * +from utils.torch_utils import select_device, load_classifier, time_synchronized +from flask import Flask,url_for +from log import Logger + +from deep_sort_pytorch.deep_sort import DeepSort +from deep_sort_pytorch.utils.parser import get_config + +class Camera(BaseCamera): + + #video_source = 'people.mp4' + palette = (2 ** 11 - 1, 2 ** 15 - 1, 2 ** 20 - 1) + video_source = 'people.mp4' + def __init__(self): + if os.environ.get('OPENCV_CAMERA_SOURCE'): + print('走了吗') + Camera.set_video_source(int(os.environ['OPENCV_CAMERA_SOURCE'])) + super(Camera, self).__init__() + print('走了') + @staticmethod + def set_video_source(source): + Camera.video_source = source + + @staticmethod + def bbox_rel(*xyxy): + """" Calculates the relative bounding box from absolute pixel values. """ + bbox_left = min([xyxy[0].item(), xyxy[2].item()]) + bbox_top = min([xyxy[1].item(), xyxy[3].item()]) + bbox_w = abs(xyxy[0].item() - xyxy[2].item()) + bbox_h = abs(xyxy[1].item() - xyxy[3].item()) + x_c = (bbox_left + bbox_w / 2) + y_c = (bbox_top + bbox_h / 2) + w = bbox_w + h = bbox_h + return x_c, y_c, w, h + + @staticmethod + def compute_color_for_labels(label): + """ + Simple function that adds fixed color depending on the class + """ + color = [int((p * (label ** 2 - label + 1)) % 255) for p in Camera.palette] + return tuple(color) + # @staticmethod + # def people_appeal1(): + # a = 'people' + # yield a + @staticmethod + def draw_boxes(img, bbox, cls_names, scores, identities=None, offset=(0,0)): + for i, box in enumerate(bbox): + x1, y1, x2, y2 = [int(i) for i in box] + x1 += offset[0] + x2 += offset[0] + y1 += offset[1] + y2 += offset[1] + # box text and bar + id = int(identities[i]) if identities is not None else 0 + color = Camera.compute_color_for_labels(id) + label = '%d %s %d' % (id, cls_names[i], scores[i]) + label += '%' + print("{0}号人物出现!========================================".format(id)) + t_size = cv2.getTextSize(label, cv2.FONT_HERSHEY_PLAIN, 2, 2)[0] + cv2.rectangle(img, (x1, y1), (x2, y2), color, 3) + cv2.rectangle( + img, (x1, y1), (x1 + t_size[0] + 3, y1 + t_size[1] + 4), color, -1) + cv2.putText(img, label, (x1, y1 + + t_size[1] + 4), cv2.FONT_HERSHEY_PLAIN, 2, [255, 255, 255], 2) + return img + @staticmethod + def frames(): + logger = Logger() + print('初始化过了,。。。。。') + camera = cv2.VideoCapture(Camera.video_source) + if not camera.isOpened(): + raise RuntimeError('Could not start camera.') + + out, weights, imgsz = \ + '.inference/output', 'weights/yolov5s.pt', 640 + source = "people.mp4" + # print(source) + # print(type(source)) + #webcam = source.isnumeric() + # print('看看webcam:{0}'.format(webcam)) + ''' + 初始化deepsort + ''' + # initialize deepsort + # cfg = get_config() + # cfg.merge_from_file('deep_sort_pytorch/configs/deep_sort.yaml') + # deepsort = DeepSort(cfg.DEEPSORT.REID_CKPT, + # max_dist=cfg.DEEPSORT.MAX_DIST, min_confidence=cfg.DEEPSORT.MIN_CONFIDENCE, + # nms_max_overlap=cfg.DEEPSORT.NMS_MAX_OVERLAP, + # max_iou_distance=cfg.DEEPSORT.MAX_IOU_DISTANCE, + # max_age=cfg.DEEPSORT.MAX_AGE, n_init=cfg.DEEPSORT.N_INIT, nn_budget=cfg.DEEPSORT.NN_BUDGET, + # use_cuda=True) + + + + + device = torch_utils.select_device() + # print(weights) + # print(os.getcwd()) + if os.path.exists(out): + shutil.rmtree(out) # delete output folder + os.makedirs(out) # make new output folder + #shutil.rmtree(out) + # Load model + # google_utils.attempt_download(weights) + # model = torch.load(weights, map_location=device)['model'] + model = attempt_load(weights, map_location=device) # load FP32 model + model.to(device).eval() + + # Second-stage classifier + classify = False + if classify: + modelc = load_classifier(name='resnet101', n=2) # initialize + modelc.load_state_dict(torch.load('weights/resnet101.pt', map_location=device)['model']) # load weights + modelc.to(device).eval() + + # Half precision + half = False and device.type != 'cpu' + # print('half = ' + str(half)) + + if half: + model.half() + + # Set Dataloader + vid_path, vid_writer = None, None + # #if webcam: + # view_img = True + # cudnn.benchmark = True # set True to speed up constant image size inference + # dataset = LoadStreams(source, img_size=imgsz) + # else: + # save_img = True + # # # 如果检测视频的时候想显示出来,可以在这里加一行view_img = True + # view_img = True + # dataset = LoadImages(source, img_size=imgsz) + # vid_path, vid_writer = None, None + dataset = LoadImages(source, img_size=imgsz) + #dataset = LoadStreams(source, img_size=imgsz) + # print('看看dataset:{0}'.format(dataset)) + names = model.names if hasattr(model, 'names') else model.modules.names + # print('----') + # print(names) + colors = [[random.randint(0, 255) for _ in range(3)] for _ in range(len(names))] + + # Run inference + t0 = time.time() + img = torch.zeros((1, 3, imgsz, imgsz), device=device) # init img + _ = model(img.half() if half else img) if device.type != 'cpu' else None # run once + for frame_idx, (path, img, im0s, vid_cap) in enumerate(dataset): + + img = torch.from_numpy(img).to(device) + img = img.half() if half else img.float() # uint8 to fp16/32 + img /= 255.0 # 0 - 255 to 0.0 - 1.0 + if img.ndimension() == 3: + img = img.unsqueeze(0) + + # Inference + t1 = torch_utils.time_synchronized() + pred = model(img, augment=False)[0] + + # Apply NMS + pred = non_max_suppression(pred, 0.4, 0.5, + fast=True, classes=None, agnostic=False) + t2 = torch_utils.time_synchronized() + + # Apply Classifier + if classify: + pred = apply_classifier(pred, modelc, img, im0s) + people_coords = [] + for i, det in enumerate(pred): # detections per image + #p, s, im0 = path, '', im0s + p, s, im0 = path[i], '%g: ' % i, im0s[i].copy() + #save_path = str(Path(out) / Path(p).name) + s += '%gx%g ' % img.shape[2:] # print string + #gn = torch.tensor(im0.shape)[[1, 0, 1, 0]] #  normalization gain whwh + + if det is not None and len(det): + # Rescale boxes from img_size to im0 size + det[:, :4] = scale_coords(img.shape[2:], det[:, :4], im0.shape).round() + + #for c in det[:, -1].unique(): #probably error with torch 1.5 + for c in det[:, -1].detach().unique(): + n = (det[:, -1] == c).sum() # detections per class + s += '%g %s, ' % (n, names[int(c)]) # add to string + + # --- linjie + # bbox_xywh = [] + # confs = [] + # clses = [] + + # for *xyxy, conf, cls in det: + # label = '%s %.2f' % (names[int(cls)], conf) + # plot_one_box(xyxy, im0, label=label, color=colors[int(cls)], line_thickness=3) + # Write results + for *xyxy, conf, cls in reversed(det): + # -- linjie deepsort + # x_c, y_c, bbox_w, bbox_h = Camera.bbox_rel(*xyxy) + # obj = [x_c, y_c, bbox_w, bbox_h] + # bbox_xywh.append(obj) + # confs.append([conf.item()]) + # clses.append([cls.item()]) + + label = '%s %.2f' % (names[int(cls)], conf) + print('看看这次打的标签:{0}'.format(label)) + + plot_one_box(xyxy, im0, label=label, color=colors[int(cls)], line_thickness=3) + # 判断标签是否为人 --linjie + if label is not None: + if (label.split())[0] == 'person': + logger.info('当前进程:{0}.遇到了人'.format(os.getpid())) + #print('标签是人') + # distancing(people_coords, im0, dist_thres_lim=(200, 250)) + # people_coords.append(xyxy) + plot_one_box(xyxy, im0, line_thickness=3) + plot_dots_on_people(xyxy, im0) + + + + print('%sDone. (%.3fs)' % (s, t2 - t1)) + # Stream results + # if view_img: + # cv2.imshow(p, im0) + # if cv2.waitKey(1) == ord('q'): # q to quit + # raise StopIteration + yield cv2.imencode('.jpg', im0)[1].tobytes() + + diff --git a/data/coco.yaml b/data/coco.yaml index a1d126c..09f3a78 100644 --- a/data/coco.yaml +++ b/data/coco.yaml @@ -1,23 +1,35 @@ # COCO 2017 dataset http://cocodataset.org +# Train command: python train.py --data coco.yaml +# Default dataset location is next to /yolov5: +# /parent_folder +# /coco +# /yolov5 + # download command/URL (optional) -download: bash ./scripts/get_coco.sh +download: bash data/scripts/get_coco.sh # train and val data as 1) directory: path/images/, 2) file: path/images.txt, or 3) list: [path1/images/, path2/images/] -train: ./coco/train2017.txt # 118287 images -val: ./coco/val2017.txt # 5000 images -test: ./coco/test-dev2017.txt # 20288 of 40670 images, submit to https://competitions.codalab.org/competitions/20794 +train: ../coco/train2017.txt # 118287 images +val: ../coco/val2017.txt # 5000 images +test: ../coco/test-dev2017.txt # 20288 of 40670 images, submit to https://competitions.codalab.org/competitions/20794 # number of classes nc: 80 # class names -names: [ 'person', 'bicycle', 'car', 'motorcycle', 'airplane', 'bus', 'train', 'truck', 'boat', 'traffic light', - 'fire hydrant', 'stop sign', 'parking meter', 'bench', 'bird', 'cat', 'dog', 'horse', 'sheep', 'cow', - 'elephant', 'bear', 'zebra', 'giraffe', 'backpack', 'umbrella', 'handbag', 'tie', 'suitcase', 'frisbee', - 'skis', 'snowboard', 'sports ball', 'kite', 'baseball bat', 'baseball glove', 'skateboard', 'surfboard', - 'tennis racket', 'bottle', 'wine glass', 'cup', 'fork', 'knife', 'spoon', 'bowl', 'banana', 'apple', - 'sandwich', 'orange', 'broccoli', 'carrot', 'hot dog', 'pizza', 'donut', 'cake', 'chair', 'couch', - 'potted plant', 'bed', 'dining table', 'toilet', 'tv', 'laptop', 'mouse', 'remote', 'keyboard', 'cell phone', - 'microwave', 'oven', 'toaster', 'sink', 'refrigerator', 'book', 'clock', 'vase', 'scissors', 'teddy bear', - 'hair drier', 'toothbrush' ] +names: ['person', 'bicycle', 'car', 'motorcycle', 'airplane', 'bus', 'train', 'truck', 'boat', 'traffic light', + 'fire hydrant', 'stop sign', 'parking meter', 'bench', 'bird', 'cat', 'dog', 'horse', 'sheep', 'cow', + 'elephant', 'bear', 'zebra', 'giraffe', 'backpack', 'umbrella', 'handbag', 'tie', 'suitcase', 'frisbee', + 'skis', 'snowboard', 'sports ball', 'kite', 'baseball bat', 'baseball glove', 'skateboard', 'surfboard', + 'tennis racket', 'bottle', 'wine glass', 'cup', 'fork', 'knife', 'spoon', 'bowl', 'banana', 'apple', + 'sandwich', 'orange', 'broccoli', 'carrot', 'hot dog', 'pizza', 'donut', 'cake', 'chair', 'couch', + 'potted plant', 'bed', 'dining table', 'toilet', 'tv', 'laptop', 'mouse', 'remote', 'keyboard', 'cell phone', + 'microwave', 'oven', 'toaster', 'sink', 'refrigerator', 'book', 'clock', 'vase', 'scissors', 'teddy bear', + 'hair drier', 'toothbrush'] + +# Print classes +# with open('data/coco.yaml') as f: +# d = yaml.load(f, Loader=yaml.FullLoader) # dict +# for i, x in enumerate(d['names']): +# print(i, x) diff --git a/data/coco128.yaml b/data/coco128.yaml new file mode 100644 index 0000000..12e1d79 --- /dev/null +++ b/data/coco128.yaml @@ -0,0 +1,28 @@ +# COCO 2017 dataset http://cocodataset.org - first 128 training images +# Train command: python train.py --data coco128.yaml +# Default dataset location is next to /yolov5: +# /parent_folder +# /coco128 +# /yolov5 + + +# download command/URL (optional) +download: https://github.com/ultralytics/yolov5/releases/download/v1.0/coco128.zip + +# train and val data as 1) directory: path/images/, 2) file: path/images.txt, or 3) list: [path1/images/, path2/images/] +train: ../coco128/images/train2017/ # 128 images +val: ../coco128/images/train2017/ # 128 images + +# number of classes +nc: 80 + +# class names +names: ['person', 'bicycle', 'car', 'motorcycle', 'airplane', 'bus', 'train', 'truck', 'boat', 'traffic light', + 'fire hydrant', 'stop sign', 'parking meter', 'bench', 'bird', 'cat', 'dog', 'horse', 'sheep', 'cow', + 'elephant', 'bear', 'zebra', 'giraffe', 'backpack', 'umbrella', 'handbag', 'tie', 'suitcase', 'frisbee', + 'skis', 'snowboard', 'sports ball', 'kite', 'baseball bat', 'baseball glove', 'skateboard', 'surfboard', + 'tennis racket', 'bottle', 'wine glass', 'cup', 'fork', 'knife', 'spoon', 'bowl', 'banana', 'apple', + 'sandwich', 'orange', 'broccoli', 'carrot', 'hot dog', 'pizza', 'donut', 'cake', 'chair', 'couch', + 'potted plant', 'bed', 'dining table', 'toilet', 'tv', 'laptop', 'mouse', 'remote', 'keyboard', 'cell phone', + 'microwave', 'oven', 'toaster', 'sink', 'refrigerator', 'book', 'clock', 'vase', 'scissors', 'teddy bear', + 'hair drier', 'toothbrush'] diff --git a/data/hyp.finetune.yaml b/data/hyp.finetune.yaml new file mode 100644 index 0000000..962d84a --- /dev/null +++ b/data/hyp.finetune.yaml @@ -0,0 +1,27 @@ +# Hyperparameters for VOC fine-tuning +# python train.py --batch 64 --cfg '' --weights yolov5m.pt --data voc.yaml --img 512 --epochs 50 +# See tutorials for hyperparameter evolution https://github.com/ultralytics/yolov5#tutorials + + +lr0: 0.01 # initial learning rate (SGD=1E-2, Adam=1E-3) +momentum: 0.937 # SGD momentum/Adam beta1 +weight_decay: 0.0005 # optimizer weight decay 5e-4 +giou: 0.05 # GIoU loss gain +cls: 0.5 # cls loss gain +cls_pw: 1.0 # cls BCELoss positive_weight +obj: 1.0 # obj loss gain (scale with pixels) +obj_pw: 1.0 # obj BCELoss positive_weight +iou_t: 0.20 # IoU training threshold +anchor_t: 4.0 # anchor-multiple threshold +fl_gamma: 0.0 # focal loss gamma (efficientDet default gamma=1.5) +hsv_h: 0.015 # image HSV-Hue augmentation (fraction) +hsv_s: 0.7 # image HSV-Saturation augmentation (fraction) +hsv_v: 0.4 # image HSV-Value augmentation (fraction) +degrees: 0.0 # image rotation (+/- deg) +translate: 0.1 # image translation (+/- fraction) +scale: 0.5 # image scale (+/- gain) +shear: 0.0 # image shear (+/- deg) +perspective: 0.0 # image perspective (+/- fraction), range 0-0.001 +flipud: 0.0 # image flip up-down (probability) +fliplr: 0.5 # image flip left-right (probability) +mixup: 0.0 # image mixup (probability) diff --git a/data/hyp.scratch.yaml b/data/hyp.scratch.yaml new file mode 100644 index 0000000..6fbd38c --- /dev/null +++ b/data/hyp.scratch.yaml @@ -0,0 +1,27 @@ +# Hyperparameters for COCO training from scratch +# python train.py --batch 40 --cfg yolov5m.yaml --weights '' --data coco.yaml --img 640 --epochs 300 +# See tutorials for hyperparameter evolution https://github.com/ultralytics/yolov5#tutorials + + +lr0: 0.01 # initial learning rate (SGD=1E-2, Adam=1E-3) +momentum: 0.937 # SGD momentum/Adam beta1 +weight_decay: 0.0005 # optimizer weight decay 5e-4 +giou: 0.05 # GIoU loss gain +cls: 0.5 # cls loss gain +cls_pw: 1.0 # cls BCELoss positive_weight +obj: 1.0 # obj loss gain (scale with pixels) +obj_pw: 1.0 # obj BCELoss positive_weight +iou_t: 0.20 # IoU training threshold +anchor_t: 4.0 # anchor-multiple threshold +fl_gamma: 0.0 # focal loss gamma (efficientDet default gamma=1.5) +hsv_h: 0.015 # image HSV-Hue augmentation (fraction) +hsv_s: 0.7 # image HSV-Saturation augmentation (fraction) +hsv_v: 0.4 # image HSV-Value augmentation (fraction) +degrees: 0.0 # image rotation (+/- deg) +translate: 0.1 # image translation (+/- fraction) +scale: 0.5 # image scale (+/- gain) +shear: 0.0 # image shear (+/- deg) +perspective: 0.0 # image perspective (+/- fraction), range 0-0.001 +flipud: 0.0 # image flip up-down (probability) +fliplr: 0.5 # image flip left-right (probability) +mixup: 0.0 # image mixup (probability) diff --git a/data/scripts/get_coco.sh b/data/scripts/get_coco.sh new file mode 100644 index 0000000..7f86377 --- /dev/null +++ b/data/scripts/get_coco.sh @@ -0,0 +1,21 @@ +#!/bin/bash +# COCO 2017 dataset http://cocodataset.org +# Download command: bash data/scripts/get_coco.sh +# Train command: python train.py --data coco.yaml +# Default dataset location is next to /yolov5: +# /parent_folder +# /coco +# /yolov5 + +# Download/unzip labels +echo 'Downloading COCO 2017 labels ...' +d='../' # unzip directory +f='coco2017labels.zip' && curl -L https://github.com/ultralytics/yolov5/releases/download/v1.0/$f -o $f +unzip -q $f -d $d && rm $f + +# Download/unzip images +echo 'Downloading COCO 2017 images ...' +d='../coco/images' # unzip directory +f='train2017.zip' && curl http://images.cocodataset.org/zips/$f -o $f && unzip -q $f -d $d && rm $f # 19G, 118k images +f='val2017.zip' && curl http://images.cocodataset.org/zips/$f -o $f && unzip -q $f -d $d && rm $f # 1G, 5k images +# f='test2017.zip' && curl http://images.cocodataset.org/zips/$f -o $f && unzip -q $f -d $d && rm $f # 7G, 41k images diff --git a/data/scripts/get_voc.sh b/data/scripts/get_voc.sh new file mode 100644 index 0000000..94843a6 --- /dev/null +++ b/data/scripts/get_voc.sh @@ -0,0 +1,212 @@ +#!/bin/bash +# PASCAL VOC dataset http://host.robots.ox.ac.uk/pascal/VOC/ +# Download command: bash data/scripts/get_voc.sh +# Train command: python train.py --data voc.yaml +# Default dataset location is next to /yolov5: +# /parent_folder +# /VOC +# /yolov5 + +start=$(date +%s) + +# handle optional download dir +if [ -z "$1" ]; then + # navigate to ~/tmp + echo "navigating to ../tmp/ ..." + mkdir -p ../tmp + cd ../tmp/ +else + # check if is valid directory + if [ ! -d $1 ]; then + echo $1 "is not a valid directory" + exit 0 + fi + echo "navigating to" $1 "..." + cd $1 +fi + +echo "Downloading VOC2007 trainval ..." +# Download data +curl -LO http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtrainval_06-Nov-2007.tar +echo "Downloading VOC2007 test data ..." +curl -LO http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtest_06-Nov-2007.tar +echo "Done downloading." + +# Extract data +echo "Extracting trainval ..." +tar -xf VOCtrainval_06-Nov-2007.tar +echo "Extracting test ..." +tar -xf VOCtest_06-Nov-2007.tar +echo "removing tars ..." +rm VOCtrainval_06-Nov-2007.tar +rm VOCtest_06-Nov-2007.tar + +end=$(date +%s) +runtime=$((end - start)) + +echo "Completed in" $runtime "seconds" + +start=$(date +%s) + +# handle optional download dir +if [ -z "$1" ]; then + # navigate to ~/tmp + echo "navigating to ../tmp/ ..." + mkdir -p ../tmp + cd ../tmp/ +else + # check if is valid directory + if [ ! -d $1 ]; then + echo $1 "is not a valid directory" + exit 0 + fi + echo "navigating to" $1 "..." + cd $1 +fi + +echo "Downloading VOC2012 trainval ..." +# Download data +curl -LO http://host.robots.ox.ac.uk/pascal/VOC/voc2012/VOCtrainval_11-May-2012.tar +echo "Done downloading." + +# Extract data +echo "Extracting trainval ..." +tar -xf VOCtrainval_11-May-2012.tar +echo "removing tar ..." +rm VOCtrainval_11-May-2012.tar + +end=$(date +%s) +runtime=$((end - start)) + +echo "Completed in" $runtime "seconds" + +cd ../tmp +echo "Spliting dataset..." +python3 - "$@" <train.txt +cat 2007_train.txt 2007_val.txt 2007_test.txt 2012_train.txt 2012_val.txt >train.all.txt + +python3 - "$@" <= 0.4 +- torchvision >= 0.1 +- pillow +- vizer +- edict + +## Quick Start +0. Check all dependencies installed +```bash +pip install -r requirements.txt +``` +for user in china, you can specify pypi source to accelerate install like: +```bash +pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple +``` + +1. Clone this repository +``` +git clone git@github.com:ZQPei/deep_sort_pytorch.git +``` + +2. Download YOLOv3 parameters +``` +cd detector/YOLOv3/weight/ +wget https://pjreddie.com/media/files/yolov3.weights +wget https://pjreddie.com/media/files/yolov3-tiny.weights +cd ../../../ +``` + +3. Download deepsort parameters ckpt.t7 +``` +cd deep_sort/deep/checkpoint +# download ckpt.t7 from +https://drive.google.com/drive/folders/1xhG0kRH1EX5B9_Iz8gQJb7UNnn_riXi6 to this folder +cd ../../../ +``` + +4. Compile nms module +```bash +cd detector/YOLOv3/nms +sh build.sh +cd ../../.. +``` + +Notice: +If compiling failed, the simplist way is to **Upgrade your pytorch >= 1.1 and torchvision >= 0.3" and you can avoid the troublesome compiling problems which are most likely caused by either `gcc version too low` or `libraries missing`. + +5. Run demo +``` +usage: python yolov3_deepsort.py VIDEO_PATH + [--help] + [--frame_interval FRAME_INTERVAL] + [--config_detection CONFIG_DETECTION] + [--config_deepsort CONFIG_DEEPSORT] + [--display] + [--display_width DISPLAY_WIDTH] + [--display_height DISPLAY_HEIGHT] + [--save_path SAVE_PATH] + [--cpu] + +# yolov3 + deepsort +python yolov3_deepsort.py [VIDEO_PATH] + +# yolov3_tiny + deepsort +python yolov3_deepsort.py [VIDEO_PATH] --config_detection ./configs/yolov3_tiny.yaml + +# yolov3 + deepsort on webcam +python3 yolov3_deepsort.py /dev/video0 --camera 0 + +# yolov3_tiny + deepsort on webcam +python3 yolov3_deepsort.py /dev/video0 --config_detection ./configs/yolov3_tiny.yaml --camera 0 +``` +Use `--display` to enable display. +Results will be saved to `./output/results.avi` and `./output/results.txt`. + +All files above can also be accessed from BaiduDisk! +linker:[BaiduDisk](https://pan.baidu.com/s/1YJ1iPpdFTlUyLFoonYvozg) +passwd:fbuw + +## Training the RE-ID model +The original model used in paper is in original_model.py, and its parameter here [original_ckpt.t7](https://drive.google.com/drive/folders/1xhG0kRH1EX5B9_Iz8gQJb7UNnn_riXi6). + +To train the model, first you need download [Market1501](http://www.liangzheng.com.cn/Project/project_reid.html) dataset or [Mars](http://www.liangzheng.com.cn/Project/project_mars.html) dataset. + +Then you can try [train.py](deep_sort/deep/train.py) to train your own parameter and evaluate it using [test.py](deep_sort/deep/test.py) and [evaluate.py](deep_sort/deep/evalute.py). +![train.jpg](deep_sort/deep/train.jpg) + +## Demo videos and images +[demo.avi](https://drive.google.com/drive/folders/1xhG0kRH1EX5B9_Iz8gQJb7UNnn_riXi6) +[demo2.avi](https://drive.google.com/drive/folders/1xhG0kRH1EX5B9_Iz8gQJb7UNnn_riXi6) + +![1.jpg](demo/1.jpg) +![2.jpg](demo/2.jpg) + + +## References +- paper: [Simple Online and Realtime Tracking with a Deep Association Metric](https://arxiv.org/abs/1703.07402) + +- code: [nwojke/deep_sort](https://github.com/nwojke/deep_sort) + +- paper: [YOLOv3](https://pjreddie.com/media/files/papers/YOLOv3.pdf) + +- code: [Joseph Redmon/yolov3](https://pjreddie.com/darknet/yolo/) diff --git a/deep_sort_pytorch/configs/deep_sort.yaml b/deep_sort_pytorch/configs/deep_sort.yaml new file mode 100644 index 0000000..f91a9c1 --- /dev/null +++ b/deep_sort_pytorch/configs/deep_sort.yaml @@ -0,0 +1,10 @@ +DEEPSORT: + REID_CKPT: "deep_sort_pytorch/deep_sort/deep/checkpoint/ckpt.t7" + MAX_DIST: 0.2 + MIN_CONFIDENCE: 0.3 + NMS_MAX_OVERLAP: 0.5 + MAX_IOU_DISTANCE: 0.7 + MAX_AGE: 70 + N_INIT: 3 + NN_BUDGET: 100 + diff --git a/deep_sort_pytorch/deep_sort/README.md b/deep_sort_pytorch/deep_sort/README.md new file mode 100644 index 0000000..e89c9b3 --- /dev/null +++ b/deep_sort_pytorch/deep_sort/README.md @@ -0,0 +1,3 @@ +# Deep Sort + +This is the implemention of deep sort with pytorch. \ No newline at end of file diff --git a/deep_sort_pytorch/deep_sort/__init__.py b/deep_sort_pytorch/deep_sort/__init__.py new file mode 100644 index 0000000..5fe5d0f --- /dev/null +++ b/deep_sort_pytorch/deep_sort/__init__.py @@ -0,0 +1,21 @@ +from .deep_sort import DeepSort + + +__all__ = ['DeepSort', 'build_tracker'] + + +def build_tracker(cfg, use_cuda): + return DeepSort(cfg.DEEPSORT.REID_CKPT, + max_dist=cfg.DEEPSORT.MAX_DIST, min_confidence=cfg.DEEPSORT.MIN_CONFIDENCE, + nms_max_overlap=cfg.DEEPSORT.NMS_MAX_OVERLAP, max_iou_distance=cfg.DEEPSORT.MAX_IOU_DISTANCE, + max_age=cfg.DEEPSORT.MAX_AGE, n_init=cfg.DEEPSORT.N_INIT, nn_budget=cfg.DEEPSORT.NN_BUDGET, use_cuda=use_cuda) + + + + + + + + + + diff --git a/deep_sort_pytorch/deep_sort/deep/__init__.py b/deep_sort_pytorch/deep_sort/deep/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/deep_sort_pytorch/deep_sort/deep/checkpoint/.gitkeep b/deep_sort_pytorch/deep_sort/deep/checkpoint/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/deep_sort_pytorch/deep_sort/deep/evaluate.py b/deep_sort_pytorch/deep_sort/deep/evaluate.py new file mode 100644 index 0000000..a0458ac --- /dev/null +++ b/deep_sort_pytorch/deep_sort/deep/evaluate.py @@ -0,0 +1,13 @@ +import torch + +features = torch.load("features.pth") +qf = features["qf"] +ql = features["ql"] +gf = features["gf"] +gl = features["gl"] + +scores = qf.mm(gf.t()) +res = scores.topk(5, dim=1)[1][:, 0] +top1correct = gl[res].eq(ql).sum().item() + +print("Acc top1:{:.3f}".format(top1correct / ql.size(0))) diff --git a/deep_sort_pytorch/deep_sort/deep/feature_extractor.py b/deep_sort_pytorch/deep_sort/deep/feature_extractor.py new file mode 100644 index 0000000..c37f7b6 --- /dev/null +++ b/deep_sort_pytorch/deep_sort/deep/feature_extractor.py @@ -0,0 +1,57 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# @Author : linjie +import torch +import torchvision.transforms as transforms +import numpy as np +import cv2 +import logging + +from .model import Net + + +class Extractor(object): + def __init__(self, model_path, use_cuda=True): + self.net = Net(reid=True) + self.device = "cuda" if torch.cuda.is_available() and use_cuda else "cpu" + state_dict = torch.load(model_path, map_location=lambda storage, loc: storage)[ + 'net_dict'] + self.net.load_state_dict(state_dict) + logger = logging.getLogger("root.tracker") + logger.info("Loading weights from {}... Done!".format(model_path)) + self.net.to(self.device) + self.size = (64, 128) + self.norm = transforms.Compose([ + transforms.ToTensor(), + transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225]), + ]) + + def _preprocess(self, im_crops): + """ + TODO: + 1. to float with scale from 0 to 1 + 2. resize to (64, 128) as Market1501 dataset did + 3. concatenate to a numpy array + 3. to torch Tensor + 4. normalize + """ + def _resize(im, size): + return cv2.resize(im.astype(np.float32)/255., size) + + im_batch = torch.cat([self.norm(_resize(im, self.size)).unsqueeze( + 0) for im in im_crops], dim=0).float() + return im_batch + + def __call__(self, im_crops): + im_batch = self._preprocess(im_crops) + with torch.no_grad(): + im_batch = im_batch.to(self.device) + features = self.net(im_batch) + return features.cpu().numpy() + + +if __name__ == '__main__': + img = cv2.imread("demo.jpg")[:, :, (2, 1, 0)] + extr = Extractor("checkpoint/ckpt.t7") + feature = extr(img) + print(feature.shape) diff --git a/deep_sort_pytorch/deep_sort/deep/model.py b/deep_sort_pytorch/deep_sort/deep/model.py new file mode 100644 index 0000000..b992474 --- /dev/null +++ b/deep_sort_pytorch/deep_sort/deep/model.py @@ -0,0 +1,109 @@ +import torch +import torch.nn as nn +import torch.nn.functional as F + + +class BasicBlock(nn.Module): + def __init__(self, c_in, c_out, is_downsample=False): + super(BasicBlock, self).__init__() + self.is_downsample = is_downsample + if is_downsample: + self.conv1 = nn.Conv2d( + c_in, c_out, 3, stride=2, padding=1, bias=False) + else: + self.conv1 = nn.Conv2d( + c_in, c_out, 3, stride=1, padding=1, bias=False) + self.bn1 = nn.BatchNorm2d(c_out) + self.relu = nn.ReLU(True) + self.conv2 = nn.Conv2d(c_out, c_out, 3, stride=1, + padding=1, bias=False) + self.bn2 = nn.BatchNorm2d(c_out) + if is_downsample: + self.downsample = nn.Sequential( + nn.Conv2d(c_in, c_out, 1, stride=2, bias=False), + nn.BatchNorm2d(c_out) + ) + elif c_in != c_out: + self.downsample = nn.Sequential( + nn.Conv2d(c_in, c_out, 1, stride=1, bias=False), + nn.BatchNorm2d(c_out) + ) + self.is_downsample = True + + def forward(self, x): + y = self.conv1(x) + y = self.bn1(y) + y = self.relu(y) + y = self.conv2(y) + y = self.bn2(y) + if self.is_downsample: + x = self.downsample(x) + return F.relu(x.add(y), True) + + +def make_layers(c_in, c_out, repeat_times, is_downsample=False): + blocks = [] + for i in range(repeat_times): + if i == 0: + blocks += [BasicBlock(c_in, c_out, is_downsample=is_downsample), ] + else: + blocks += [BasicBlock(c_out, c_out), ] + return nn.Sequential(*blocks) + + +class Net(nn.Module): + def __init__(self, num_classes=751, reid=False): + super(Net, self).__init__() + # 3 128 64 + self.conv = nn.Sequential( + nn.Conv2d(3, 64, 3, stride=1, padding=1), + nn.BatchNorm2d(64), + nn.ReLU(inplace=True), + # nn.Conv2d(32,32,3,stride=1,padding=1), + # nn.BatchNorm2d(32), + # nn.ReLU(inplace=True), + nn.MaxPool2d(3, 2, padding=1), + ) + # 32 64 32 + self.layer1 = make_layers(64, 64, 2, False) + # 32 64 32 + self.layer2 = make_layers(64, 128, 2, True) + # 64 32 16 + self.layer3 = make_layers(128, 256, 2, True) + # 128 16 8 + self.layer4 = make_layers(256, 512, 2, True) + # 256 8 4 + self.avgpool = nn.AvgPool2d((8, 4), 1) + # 256 1 1 + self.reid = reid + self.classifier = nn.Sequential( + nn.Linear(512, 256), + nn.BatchNorm1d(256), + nn.ReLU(inplace=True), + nn.Dropout(), + nn.Linear(256, num_classes), + ) + + def forward(self, x): + x = self.conv(x) + x = self.layer1(x) + x = self.layer2(x) + x = self.layer3(x) + x = self.layer4(x) + x = self.avgpool(x) + x = x.view(x.size(0), -1) + # B x 128 + if self.reid: + x = x.div(x.norm(p=2, dim=1, keepdim=True)) + return x + # classifier + x = self.classifier(x) + return x + + +if __name__ == '__main__': + net = Net() + x = torch.randn(4, 3, 128, 64) + y = net(x) + import ipdb + ipdb.set_trace() diff --git a/deep_sort_pytorch/deep_sort/deep/original_model.py b/deep_sort_pytorch/deep_sort/deep/original_model.py new file mode 100644 index 0000000..27734ad --- /dev/null +++ b/deep_sort_pytorch/deep_sort/deep/original_model.py @@ -0,0 +1,111 @@ +import torch +import torch.nn as nn +import torch.nn.functional as F + + +class BasicBlock(nn.Module): + def __init__(self, c_in, c_out, is_downsample=False): + super(BasicBlock, self).__init__() + self.is_downsample = is_downsample + if is_downsample: + self.conv1 = nn.Conv2d( + c_in, c_out, 3, stride=2, padding=1, bias=False) + else: + self.conv1 = nn.Conv2d( + c_in, c_out, 3, stride=1, padding=1, bias=False) + self.bn1 = nn.BatchNorm2d(c_out) + self.relu = nn.ReLU(True) + self.conv2 = nn.Conv2d(c_out, c_out, 3, stride=1, + padding=1, bias=False) + self.bn2 = nn.BatchNorm2d(c_out) + if is_downsample: + self.downsample = nn.Sequential( + nn.Conv2d(c_in, c_out, 1, stride=2, bias=False), + nn.BatchNorm2d(c_out) + ) + elif c_in != c_out: + self.downsample = nn.Sequential( + nn.Conv2d(c_in, c_out, 1, stride=1, bias=False), + nn.BatchNorm2d(c_out) + ) + self.is_downsample = True + + def forward(self, x): + y = self.conv1(x) + y = self.bn1(y) + y = self.relu(y) + y = self.conv2(y) + y = self.bn2(y) + if self.is_downsample: + x = self.downsample(x) + return F.relu(x.add(y), True) + + +def make_layers(c_in, c_out, repeat_times, is_downsample=False): + blocks = [] + for i in range(repeat_times): + if i == 0: + blocks += [BasicBlock(c_in, c_out, is_downsample=is_downsample), ] + else: + blocks += [BasicBlock(c_out, c_out), ] + return nn.Sequential(*blocks) + + +class Net(nn.Module): + def __init__(self, num_classes=625, reid=False): + super(Net, self).__init__() + # 3 128 64 + self.conv = nn.Sequential( + nn.Conv2d(3, 32, 3, stride=1, padding=1), + nn.BatchNorm2d(32), + nn.ELU(inplace=True), + nn.Conv2d(32, 32, 3, stride=1, padding=1), + nn.BatchNorm2d(32), + nn.ELU(inplace=True), + nn.MaxPool2d(3, 2, padding=1), + ) + # 32 64 32 + self.layer1 = make_layers(32, 32, 2, False) + # 32 64 32 + self.layer2 = make_layers(32, 64, 2, True) + # 64 32 16 + self.layer3 = make_layers(64, 128, 2, True) + # 128 16 8 + self.dense = nn.Sequential( + nn.Dropout(p=0.6), + nn.Linear(128*16*8, 128), + nn.BatchNorm1d(128), + nn.ELU(inplace=True) + ) + # 256 1 1 + self.reid = reid + self.batch_norm = nn.BatchNorm1d(128) + self.classifier = nn.Sequential( + nn.Linear(128, num_classes), + ) + + def forward(self, x): + x = self.conv(x) + x = self.layer1(x) + x = self.layer2(x) + x = self.layer3(x) + + x = x.view(x.size(0), -1) + if self.reid: + x = self.dense[0](x) + x = self.dense[1](x) + x = x.div(x.norm(p=2, dim=1, keepdim=True)) + return x + x = self.dense(x) + # B x 128 + # classifier + x = self.classifier(x) + return x + + +if __name__ == '__main__': + net = Net(reid=True) + x = torch.randn(4, 3, 128, 64) + y = net(x) + import ipdb + ipdb.set_trace() diff --git a/deep_sort_pytorch/deep_sort/deep/test.py b/deep_sort_pytorch/deep_sort/deep/test.py new file mode 100644 index 0000000..0ba3050 --- /dev/null +++ b/deep_sort_pytorch/deep_sort/deep/test.py @@ -0,0 +1,80 @@ +import torch +import torch.backends.cudnn as cudnn +import torchvision + +import argparse +import os + +from model import Net + +parser = argparse.ArgumentParser(description="Train on market1501") +parser.add_argument("--data-dir", default='data', type=str) +parser.add_argument("--no-cuda", action="store_true") +parser.add_argument("--gpu-id", default=0, type=int) +args = parser.parse_args() + +# device +device = "cuda:{}".format( + args.gpu_id) if torch.cuda.is_available() and not args.no_cuda else "cpu" +if torch.cuda.is_available() and not args.no_cuda: + cudnn.benchmark = True + +# data loader +root = args.data_dir +query_dir = os.path.join(root, "query") +gallery_dir = os.path.join(root, "gallery") +transform = torchvision.transforms.Compose([ + torchvision.transforms.Resize((128, 64)), + torchvision.transforms.ToTensor(), + torchvision.transforms.Normalize( + [0.485, 0.456, 0.406], [0.229, 0.224, 0.225]) +]) +queryloader = torch.utils.data.DataLoader( + torchvision.datasets.ImageFolder(query_dir, transform=transform), + batch_size=64, shuffle=False +) +galleryloader = torch.utils.data.DataLoader( + torchvision.datasets.ImageFolder(gallery_dir, transform=transform), + batch_size=64, shuffle=False +) + +# net definition +net = Net(reid=True) +assert os.path.isfile( + "./checkpoint/ckpt.t7"), "Error: no checkpoint file found!" +print('Loading from checkpoint/ckpt.t7') +checkpoint = torch.load("./checkpoint/ckpt.t7") +net_dict = checkpoint['net_dict'] +net.load_state_dict(net_dict, strict=False) +net.eval() +net.to(device) + +# compute features +query_features = torch.tensor([]).float() +query_labels = torch.tensor([]).long() +gallery_features = torch.tensor([]).float() +gallery_labels = torch.tensor([]).long() + +with torch.no_grad(): + for idx, (inputs, labels) in enumerate(queryloader): + inputs = inputs.to(device) + features = net(inputs).cpu() + query_features = torch.cat((query_features, features), dim=0) + query_labels = torch.cat((query_labels, labels)) + + for idx, (inputs, labels) in enumerate(galleryloader): + inputs = inputs.to(device) + features = net(inputs).cpu() + gallery_features = torch.cat((gallery_features, features), dim=0) + gallery_labels = torch.cat((gallery_labels, labels)) + +gallery_labels -= 2 + +# save features +features = { + "qf": query_features, + "ql": query_labels, + "gf": gallery_features, + "gl": gallery_labels +} +torch.save(features, "features.pth") diff --git a/deep_sort_pytorch/deep_sort/deep/train.jpg b/deep_sort_pytorch/deep_sort/deep/train.jpg new file mode 100644 index 0000000..3635a61 Binary files /dev/null and b/deep_sort_pytorch/deep_sort/deep/train.jpg differ diff --git a/deep_sort_pytorch/deep_sort/deep/train.py b/deep_sort_pytorch/deep_sort/deep/train.py new file mode 100644 index 0000000..67f4756 --- /dev/null +++ b/deep_sort_pytorch/deep_sort/deep/train.py @@ -0,0 +1,206 @@ +import argparse +import os +import time + +import numpy as np +import matplotlib.pyplot as plt +import torch +import torch.backends.cudnn as cudnn +import torchvision + +from model import Net + +parser = argparse.ArgumentParser(description="Train on market1501") +parser.add_argument("--data-dir", default='data', type=str) +parser.add_argument("--no-cuda", action="store_true") +parser.add_argument("--gpu-id", default=0, type=int) +parser.add_argument("--lr", default=0.1, type=float) +parser.add_argument("--interval", '-i', default=20, type=int) +parser.add_argument('--resume', '-r', action='store_true') +args = parser.parse_args() + +# device +device = "cuda:{}".format( + args.gpu_id) if torch.cuda.is_available() and not args.no_cuda else "cpu" +if torch.cuda.is_available() and not args.no_cuda: + cudnn.benchmark = True + +# data loading +root = args.data_dir +train_dir = os.path.join(root, "train") +test_dir = os.path.join(root, "test") +transform_train = torchvision.transforms.Compose([ + torchvision.transforms.RandomCrop((128, 64), padding=4), + torchvision.transforms.RandomHorizontalFlip(), + torchvision.transforms.ToTensor(), + torchvision.transforms.Normalize( + [0.485, 0.456, 0.406], [0.229, 0.224, 0.225]) +]) +transform_test = torchvision.transforms.Compose([ + torchvision.transforms.Resize((128, 64)), + torchvision.transforms.ToTensor(), + torchvision.transforms.Normalize( + [0.485, 0.456, 0.406], [0.229, 0.224, 0.225]) +]) +trainloader = torch.utils.data.DataLoader( + torchvision.datasets.ImageFolder(train_dir, transform=transform_train), + batch_size=64, shuffle=True +) +testloader = torch.utils.data.DataLoader( + torchvision.datasets.ImageFolder(test_dir, transform=transform_test), + batch_size=64, shuffle=True +) +num_classes = max(len(trainloader.dataset.classes), + len(testloader.dataset.classes)) + +# net definition +start_epoch = 0 +net = Net(num_classes=num_classes) +if args.resume: + assert os.path.isfile( + "./checkpoint/ckpt.t7"), "Error: no checkpoint file found!" + print('Loading from checkpoint/ckpt.t7') + checkpoint = torch.load("./checkpoint/ckpt.t7") + # import ipdb; ipdb.set_trace() + net_dict = checkpoint['net_dict'] + net.load_state_dict(net_dict) + best_acc = checkpoint['acc'] + start_epoch = checkpoint['epoch'] +net.to(device) + +# loss and optimizer +criterion = torch.nn.CrossEntropyLoss() +optimizer = torch.optim.SGD( + net.parameters(), args.lr, momentum=0.9, weight_decay=5e-4) +best_acc = 0. + +# train function for each epoch + + +def train(epoch): + print("\nEpoch : %d" % (epoch+1)) + net.train() + training_loss = 0. + train_loss = 0. + correct = 0 + total = 0 + interval = args.interval + start = time.time() + for idx, (inputs, labels) in enumerate(trainloader): + # forward + inputs, labels = inputs.to(device), labels.to(device) + outputs = net(inputs) + loss = criterion(outputs, labels) + + # backward + optimizer.zero_grad() + loss.backward() + optimizer.step() + + # accumurating + training_loss += loss.item() + train_loss += loss.item() + correct += outputs.max(dim=1)[1].eq(labels).sum().item() + total += labels.size(0) + + # print + if (idx+1) % interval == 0: + end = time.time() + print("[progress:{:.1f}%]time:{:.2f}s Loss:{:.5f} Correct:{}/{} Acc:{:.3f}%".format( + 100.*(idx+1)/len(trainloader), end-start, training_loss / + interval, correct, total, 100.*correct/total + )) + training_loss = 0. + start = time.time() + + return train_loss/len(trainloader), 1. - correct/total + + +def test(epoch): + global best_acc + net.eval() + test_loss = 0. + correct = 0 + total = 0 + start = time.time() + with torch.no_grad(): + for idx, (inputs, labels) in enumerate(testloader): + inputs, labels = inputs.to(device), labels.to(device) + outputs = net(inputs) + loss = criterion(outputs, labels) + + test_loss += loss.item() + correct += outputs.max(dim=1)[1].eq(labels).sum().item() + total += labels.size(0) + + print("Testing ...") + end = time.time() + print("[progress:{:.1f}%]time:{:.2f}s Loss:{:.5f} Correct:{}/{} Acc:{:.3f}%".format( + 100.*(idx+1)/len(testloader), end-start, test_loss / + len(testloader), correct, total, 100.*correct/total + )) + + # saving checkpoint + acc = 100.*correct/total + if acc > best_acc: + best_acc = acc + print("Saving parameters to checkpoint/ckpt.t7") + checkpoint = { + 'net_dict': net.state_dict(), + 'acc': acc, + 'epoch': epoch, + } + if not os.path.isdir('checkpoint'): + os.mkdir('checkpoint') + torch.save(checkpoint, './checkpoint/ckpt.t7') + + return test_loss/len(testloader), 1. - correct/total + + +# plot figure +x_epoch = [] +record = {'train_loss': [], 'train_err': [], 'test_loss': [], 'test_err': []} +fig = plt.figure() +ax0 = fig.add_subplot(121, title="loss") +ax1 = fig.add_subplot(122, title="top1err") + + +def draw_curve(epoch, train_loss, train_err, test_loss, test_err): + global record + record['train_loss'].append(train_loss) + record['train_err'].append(train_err) + record['test_loss'].append(test_loss) + record['test_err'].append(test_err) + + x_epoch.append(epoch) + ax0.plot(x_epoch, record['train_loss'], 'bo-', label='train') + ax0.plot(x_epoch, record['test_loss'], 'ro-', label='val') + ax1.plot(x_epoch, record['train_err'], 'bo-', label='train') + ax1.plot(x_epoch, record['test_err'], 'ro-', label='val') + if epoch == 0: + ax0.legend() + ax1.legend() + fig.savefig("train.jpg") + +# lr decay + + +def lr_decay(): + global optimizer + for params in optimizer.param_groups: + params['lr'] *= 0.1 + lr = params['lr'] + print("Learning rate adjusted to {}".format(lr)) + + +def main(): + for epoch in range(start_epoch, start_epoch+40): + train_loss, train_err = train(epoch) + test_loss, test_err = test(epoch) + draw_curve(epoch, train_loss, train_err, test_loss, test_err) + if (epoch+1) % 20 == 0: + lr_decay() + + +if __name__ == '__main__': + main() diff --git a/deep_sort_pytorch/deep_sort/deep_sort.py b/deep_sort_pytorch/deep_sort/deep_sort.py new file mode 100644 index 0000000..4ac37c9 --- /dev/null +++ b/deep_sort_pytorch/deep_sort/deep_sort.py @@ -0,0 +1,120 @@ +import numpy as np +import torch + +from .deep.feature_extractor import Extractor +from .sort.nn_matching import NearestNeighborDistanceMetric +from .sort.preprocessing import non_max_suppression +from .sort.detection import Detection +from .sort.tracker import Tracker + +import datetime + +__all__ = ['DeepSort'] + + +class DeepSort(object): + def __init__(self, model_path, max_dist=0.2, min_confidence=0.3, nms_max_overlap=1.0, max_iou_distance=0.7, + max_age=70, n_init=3, nn_budget=100, use_cuda=True): + self.min_confidence = min_confidence + self.nms_max_overlap = nms_max_overlap + + self.extractor = Extractor(model_path, use_cuda=use_cuda) + + max_cosine_distance = max_dist + nn_budget = 100 + metric = NearestNeighborDistanceMetric("cosine", max_cosine_distance, nn_budget) + self.tracker = Tracker(metric, max_iou_distance=max_iou_distance, max_age=max_age, n_init=n_init) + + def update(self, bbox_xywh, confidences, clses, ori_img): + self.height, self.width = ori_img.shape[:2] + # generate detections + features = self._get_features(bbox_xywh, ori_img) + bbox_tlwh = self._xywh_to_tlwh(bbox_xywh) + detections = [Detection(bbox_tlwh[i], conf, features[i], clses[i]) for i, conf in enumerate(confidences) if + conf > self.min_confidence] + + # run on non-maximum supression + boxes = np.array([d.tlwh for d in detections]) + scores = np.array([d.confidence for d in detections]) + indices = non_max_suppression(boxes, self.nms_max_overlap, scores) + detections = [detections[i] for i in indices] + + # update tracker + self.tracker.predict() + self.tracker.update(detections) + + # output bbox identities + outputs = [] + now_time = datetime.datetime.now() + for now_line, track in enumerate(self.tracker.tracks): + if not track.is_confirmed() or track.time_since_update > 1: + continue + box = track.to_tlwh() + x1, y1, x2, y2 = self._tlwh_to_xyxy(box) + track_id = track.track_id + cls2 = track.cls + score2 = int(track.score * 100) + start_time = track.start_time + stay = int((now_time - start_time).total_seconds()) + outputs.append(np.array([x1, y1, x2, y2, track_id, cls2, score2, stay], dtype=np.int)) + if len(outputs) > 0: + outputs = np.stack(outputs, axis=0) + return outputs + + """ + TODO: + Convert bbox from xc_yc_w_h to xtl_ytl_w_h + Thanks JieChen91@github.com for reporting this bug! + """ + + @staticmethod + def _xywh_to_tlwh(bbox_xywh): + if isinstance(bbox_xywh, np.ndarray): + bbox_tlwh = bbox_xywh.copy() + elif isinstance(bbox_xywh, torch.Tensor): + bbox_tlwh = bbox_xywh.clone() + bbox_tlwh[:, 0] = bbox_xywh[:, 0] - bbox_xywh[:, 2] / 2. + bbox_tlwh[:, 1] = bbox_xywh[:, 1] - bbox_xywh[:, 3] / 2. + return bbox_tlwh + + def _xywh_to_xyxy(self, bbox_xywh): + x, y, w, h = bbox_xywh + x1 = max(int(x - w / 2), 0) + x2 = min(int(x + w / 2), self.width - 1) + y1 = max(int(y - h / 2), 0) + y2 = min(int(y + h / 2), self.height - 1) + return x1, y1, x2, y2 + + def _tlwh_to_xyxy(self, bbox_tlwh): + """ + TODO: + Convert bbox from xtl_ytl_w_h to xc_yc_w_h + Thanks JieChen91@github.com for reporting this bug! + """ + x, y, w, h = bbox_tlwh + x1 = max(int(x), 0) + x2 = min(int(x + w), self.width - 1) + y1 = max(int(y), 0) + y2 = min(int(y + h), self.height - 1) + return x1, y1, x2, y2 + + def _xyxy_to_tlwh(self, bbox_xyxy): + x1, y1, x2, y2 = bbox_xyxy + + t = x1 + l = y1 + w = int(x2 - x1) + h = int(y2 - y1) + return t, l, w, h + + def _get_features(self, bbox_xywh, ori_img): + im_crops = [] + for box in bbox_xywh: + x1, y1, x2, y2 = self._xywh_to_xyxy(box) + im = ori_img[y1:y2, x1:x2] + im_crops.append(im) + if im_crops: + features = self.extractor(im_crops) + else: + features = np.array([]) + return features diff --git a/deep_sort_pytorch/deep_sort/sort/__init__.py b/deep_sort_pytorch/deep_sort/sort/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/deep_sort_pytorch/deep_sort/sort/detection.py b/deep_sort_pytorch/deep_sort/sort/detection.py new file mode 100644 index 0000000..d09955e --- /dev/null +++ b/deep_sort_pytorch/deep_sort/sort/detection.py @@ -0,0 +1,49 @@ +# vim: expandtab:ts=4:sw=4 +import numpy as np + + +class Detection(object): + """ + This class represents a bounding box detection in a single image. + + Parameters + ---------- + tlwh : array_like + Bounding box in format `(x, y, w, h)`. + confidence : float + Detector confidence score. + feature : array_like + A feature vector that describes the object contained in this image. + + Attributes + ---------- + tlwh : ndarray + Bounding box in format `(top left x, top left y, width, height)`. + confidence : ndarray + Detector confidence score. + feature : ndarray | NoneType + A feature vector that describes the object contained in this image. + + """ + + def __init__(self, tlwh, confidence, feature,clses): + self.tlwh = np.asarray(tlwh, dtype=np.float) + self.confidence = float(confidence) + self.feature = np.asarray(feature, dtype=np.float32) + self.clses = int(clses) + def to_tlbr(self): + """Convert bounding box to format `(min x, min y, max x, max y)`, i.e., + `(top left, bottom right)`. + """ + ret = self.tlwh.copy() + ret[2:] += ret[:2] + return ret + + def to_xyah(self): + """Convert bounding box to format `(center x, center y, aspect ratio, + height)`, where the aspect ratio is `width / height`. + """ + ret = self.tlwh.copy() + ret[:2] += ret[2:] / 2 + ret[2] /= ret[3] + return ret diff --git a/deep_sort_pytorch/deep_sort/sort/iou_matching.py b/deep_sort_pytorch/deep_sort/sort/iou_matching.py new file mode 100644 index 0000000..62d5a3f --- /dev/null +++ b/deep_sort_pytorch/deep_sort/sort/iou_matching.py @@ -0,0 +1,82 @@ +# vim: expandtab:ts=4:sw=4 +from __future__ import absolute_import +import numpy as np +from . import linear_assignment + + +def iou(bbox, candidates): + """Computer intersection over union. + + Parameters + ---------- + bbox : ndarray + A bounding box in format `(top left x, top left y, width, height)`. + candidates : ndarray + A matrix of candidate bounding boxes (one per row) in the same format + as `bbox`. + + Returns + ------- + ndarray + The intersection over union in [0, 1] between the `bbox` and each + candidate. A higher score means a larger fraction of the `bbox` is + occluded by the candidate. + + """ + bbox_tl, bbox_br = bbox[:2], bbox[:2] + bbox[2:] + candidates_tl = candidates[:, :2] + candidates_br = candidates[:, :2] + candidates[:, 2:] + + tl = np.c_[np.maximum(bbox_tl[0], candidates_tl[:, 0])[:, np.newaxis], + np.maximum(bbox_tl[1], candidates_tl[:, 1])[:, np.newaxis]] + br = np.c_[np.minimum(bbox_br[0], candidates_br[:, 0])[:, np.newaxis], + np.minimum(bbox_br[1], candidates_br[:, 1])[:, np.newaxis]] + wh = np.maximum(0., br - tl) + + area_intersection = wh.prod(axis=1) + area_bbox = bbox[2:].prod() + area_candidates = candidates[:, 2:].prod(axis=1) + return area_intersection / (area_bbox + area_candidates - area_intersection) + + +def iou_cost(tracks, detections, track_indices=None, + detection_indices=None): + """An intersection over union distance metric. + + Parameters + ---------- + tracks : List[deep_sort.track.Track] + A list of tracks. + detections : List[deep_sort.detection.Detection] + A list of detections. + track_indices : Optional[List[int]] + A list of indices to tracks that should be matched. Defaults to + all `tracks`. + detection_indices : Optional[List[int]] + A list of indices to detections that should be matched. Defaults + to all `detections`. + + Returns + ------- + ndarray + Returns a cost matrix of shape + len(track_indices), len(detection_indices) where entry (i, j) is + `1 - iou(tracks[track_indices[i]], detections[detection_indices[j]])`. + + """ + if track_indices is None: + track_indices = np.arange(len(tracks)) + if detection_indices is None: + detection_indices = np.arange(len(detections)) + + cost_matrix = np.zeros((len(track_indices), len(detection_indices))) + for row, track_idx in enumerate(track_indices): + if tracks[track_idx].time_since_update > 1: + cost_matrix[row, :] = linear_assignment.INFTY_COST + continue + + bbox = tracks[track_idx].to_tlwh() + candidates = np.asarray( + [detections[i].tlwh for i in detection_indices]) + cost_matrix[row, :] = 1. - iou(bbox, candidates) + return cost_matrix diff --git a/deep_sort_pytorch/deep_sort/sort/kalman_filter.py b/deep_sort_pytorch/deep_sort/sort/kalman_filter.py new file mode 100644 index 0000000..787a76e --- /dev/null +++ b/deep_sort_pytorch/deep_sort/sort/kalman_filter.py @@ -0,0 +1,229 @@ +# vim: expandtab:ts=4:sw=4 +import numpy as np +import scipy.linalg + + +""" +Table for the 0.95 quantile of the chi-square distribution with N degrees of +freedom (contains values for N=1, ..., 9). Taken from MATLAB/Octave's chi2inv +function and used as Mahalanobis gating threshold. +""" +chi2inv95 = { + 1: 3.8415, + 2: 5.9915, + 3: 7.8147, + 4: 9.4877, + 5: 11.070, + 6: 12.592, + 7: 14.067, + 8: 15.507, + 9: 16.919} + + +class KalmanFilter(object): + """ + A simple Kalman filter for tracking bounding boxes in image space. + + The 8-dimensional state space + + x, y, a, h, vx, vy, va, vh + + contains the bounding box center position (x, y), aspect ratio a, height h, + and their respective velocities. + + Object motion follows a constant velocity model. The bounding box location + (x, y, a, h) is taken as direct observation of the state space (linear + observation model). + + """ + + def __init__(self): + ndim, dt = 4, 1. + + # Create Kalman filter model matrices. + self._motion_mat = np.eye(2 * ndim, 2 * ndim) + for i in range(ndim): + self._motion_mat[i, ndim + i] = dt + self._update_mat = np.eye(ndim, 2 * ndim) + + # Motion and observation uncertainty are chosen relative to the current + # state estimate. These weights control the amount of uncertainty in + # the model. This is a bit hacky. + self._std_weight_position = 1. / 20 + self._std_weight_velocity = 1. / 160 + + def initiate(self, measurement): + """Create track from unassociated measurement. + + Parameters + ---------- + measurement : ndarray + Bounding box coordinates (x, y, a, h) with center position (x, y), + aspect ratio a, and height h. + + Returns + ------- + (ndarray, ndarray) + Returns the mean vector (8 dimensional) and covariance matrix (8x8 + dimensional) of the new track. Unobserved velocities are initialized + to 0 mean. + + """ + mean_pos = measurement + mean_vel = np.zeros_like(mean_pos) + mean = np.r_[mean_pos, mean_vel] + + std = [ + 2 * self._std_weight_position * measurement[3], + 2 * self._std_weight_position * measurement[3], + 1e-2, + 2 * self._std_weight_position * measurement[3], + 10 * self._std_weight_velocity * measurement[3], + 10 * self._std_weight_velocity * measurement[3], + 1e-5, + 10 * self._std_weight_velocity * measurement[3]] + covariance = np.diag(np.square(std)) + return mean, covariance + + def predict(self, mean, covariance): + """Run Kalman filter prediction step. + + Parameters + ---------- + mean : ndarray + The 8 dimensional mean vector of the object state at the previous + time step. + covariance : ndarray + The 8x8 dimensional covariance matrix of the object state at the + previous time step. + + Returns + ------- + (ndarray, ndarray) + Returns the mean vector and covariance matrix of the predicted + state. Unobserved velocities are initialized to 0 mean. + + """ + std_pos = [ + self._std_weight_position * mean[3], + self._std_weight_position * mean[3], + 1e-2, + self._std_weight_position * mean[3]] + std_vel = [ + self._std_weight_velocity * mean[3], + self._std_weight_velocity * mean[3], + 1e-5, + self._std_weight_velocity * mean[3]] + motion_cov = np.diag(np.square(np.r_[std_pos, std_vel])) + + mean = np.dot(self._motion_mat, mean) + covariance = np.linalg.multi_dot(( + self._motion_mat, covariance, self._motion_mat.T)) + motion_cov + + return mean, covariance + + def project(self, mean, covariance): + """Project state distribution to measurement space. + + Parameters + ---------- + mean : ndarray + The state's mean vector (8 dimensional array). + covariance : ndarray + The state's covariance matrix (8x8 dimensional). + + Returns + ------- + (ndarray, ndarray) + Returns the projected mean and covariance matrix of the given state + estimate. + + """ + std = [ + self._std_weight_position * mean[3], + self._std_weight_position * mean[3], + 1e-1, + self._std_weight_position * mean[3]] + innovation_cov = np.diag(np.square(std)) + + mean = np.dot(self._update_mat, mean) + covariance = np.linalg.multi_dot(( + self._update_mat, covariance, self._update_mat.T)) + return mean, covariance + innovation_cov + + def update(self, mean, covariance, measurement): + """Run Kalman filter correction step. + + Parameters + ---------- + mean : ndarray + The predicted state's mean vector (8 dimensional). + covariance : ndarray + The state's covariance matrix (8x8 dimensional). + measurement : ndarray + The 4 dimensional measurement vector (x, y, a, h), where (x, y) + is the center position, a the aspect ratio, and h the height of the + bounding box. + + Returns + ------- + (ndarray, ndarray) + Returns the measurement-corrected state distribution. + + """ + projected_mean, projected_cov = self.project(mean, covariance) + + chol_factor, lower = scipy.linalg.cho_factor( + projected_cov, lower=True, check_finite=False) + kalman_gain = scipy.linalg.cho_solve( + (chol_factor, lower), np.dot(covariance, self._update_mat.T).T, + check_finite=False).T + innovation = measurement - projected_mean + + new_mean = mean + np.dot(innovation, kalman_gain.T) + new_covariance = covariance - np.linalg.multi_dot(( + kalman_gain, projected_cov, kalman_gain.T)) + return new_mean, new_covariance + + def gating_distance(self, mean, covariance, measurements, + only_position=False): + """Compute gating distance between state distribution and measurements. + + A suitable distance threshold can be obtained from `chi2inv95`. If + `only_position` is False, the chi-square distribution has 4 degrees of + freedom, otherwise 2. + + Parameters + ---------- + mean : ndarray + Mean vector over the state distribution (8 dimensional). + covariance : ndarray + Covariance of the state distribution (8x8 dimensional). + measurements : ndarray + An Nx4 dimensional matrix of N measurements, each in + format (x, y, a, h) where (x, y) is the bounding box center + position, a the aspect ratio, and h the height. + only_position : Optional[bool] + If True, distance computation is done with respect to the bounding + box center position only. + + Returns + ------- + ndarray + Returns an array of length N, where the i-th element contains the + squared Mahalanobis distance between (mean, covariance) and + `measurements[i]`. + + """ + mean, covariance = self.project(mean, covariance) + if only_position: + mean, covariance = mean[:2], covariance[:2, :2] + measurements = measurements[:, :2] + + cholesky_factor = np.linalg.cholesky(covariance) + d = measurements - mean + z = scipy.linalg.solve_triangular( + cholesky_factor, d.T, lower=True, check_finite=False, + overwrite_b=True) + squared_maha = np.sum(z * z, axis=0) + return squared_maha diff --git a/deep_sort_pytorch/deep_sort/sort/linear_assignment.py b/deep_sort_pytorch/deep_sort/sort/linear_assignment.py new file mode 100644 index 0000000..858b71a --- /dev/null +++ b/deep_sort_pytorch/deep_sort/sort/linear_assignment.py @@ -0,0 +1,192 @@ +# vim: expandtab:ts=4:sw=4 +from __future__ import absolute_import +import numpy as np +# from sklearn.utils.linear_assignment_ import linear_assignment +from scipy.optimize import linear_sum_assignment as linear_assignment +from . import kalman_filter + + +INFTY_COST = 1e+5 + + +def min_cost_matching( + distance_metric, max_distance, tracks, detections, track_indices=None, + detection_indices=None): + """Solve linear assignment problem. + + Parameters + ---------- + distance_metric : Callable[List[Track], List[Detection], List[int], List[int]) -> ndarray + The distance metric is given a list of tracks and detections as well as + a list of N track indices and M detection indices. The metric should + return the NxM dimensional cost matrix, where element (i, j) is the + association cost between the i-th track in the given track indices and + the j-th detection in the given detection_indices. + max_distance : float + Gating threshold. Associations with cost larger than this value are + disregarded. + tracks : List[track.Track] + A list of predicted tracks at the current time step. + detections : List[detection.Detection] + A list of detections at the current time step. + track_indices : List[int] + List of track indices that maps rows in `cost_matrix` to tracks in + `tracks` (see description above). + detection_indices : List[int] + List of detection indices that maps columns in `cost_matrix` to + detections in `detections` (see description above). + + Returns + ------- + (List[(int, int)], List[int], List[int]) + Returns a tuple with the following three entries: + * A list of matched track and detection indices. + * A list of unmatched track indices. + * A list of unmatched detection indices. + + """ + if track_indices is None: + track_indices = np.arange(len(tracks)) + if detection_indices is None: + detection_indices = np.arange(len(detections)) + + if len(detection_indices) == 0 or len(track_indices) == 0: + return [], track_indices, detection_indices # Nothing to match. + + cost_matrix = distance_metric( + tracks, detections, track_indices, detection_indices) + cost_matrix[cost_matrix > max_distance] = max_distance + 1e-5 + + row_indices, col_indices = linear_assignment(cost_matrix) + + matches, unmatched_tracks, unmatched_detections = [], [], [] + for col, detection_idx in enumerate(detection_indices): + if col not in col_indices: + unmatched_detections.append(detection_idx) + for row, track_idx in enumerate(track_indices): + if row not in row_indices: + unmatched_tracks.append(track_idx) + for row, col in zip(row_indices, col_indices): + track_idx = track_indices[row] + detection_idx = detection_indices[col] + if cost_matrix[row, col] > max_distance: + unmatched_tracks.append(track_idx) + unmatched_detections.append(detection_idx) + else: + matches.append((track_idx, detection_idx)) + return matches, unmatched_tracks, unmatched_detections + + +def matching_cascade( + distance_metric, max_distance, cascade_depth, tracks, detections, + track_indices=None, detection_indices=None): + """Run matching cascade. + + Parameters + ---------- + distance_metric : Callable[List[Track], List[Detection], List[int], List[int]) -> ndarray + The distance metric is given a list of tracks and detections as well as + a list of N track indices and M detection indices. The metric should + return the NxM dimensional cost matrix, where element (i, j) is the + association cost between the i-th track in the given track indices and + the j-th detection in the given detection indices. + max_distance : float + Gating threshold. Associations with cost larger than this value are + disregarded. + cascade_depth: int + The cascade depth, should be se to the maximum track age. + tracks : List[track.Track] + A list of predicted tracks at the current time step. + detections : List[detection.Detection] + A list of detections at the current time step. + track_indices : Optional[List[int]] + List of track indices that maps rows in `cost_matrix` to tracks in + `tracks` (see description above). Defaults to all tracks. + detection_indices : Optional[List[int]] + List of detection indices that maps columns in `cost_matrix` to + detections in `detections` (see description above). Defaults to all + detections. + + Returns + ------- + (List[(int, int)], List[int], List[int]) + Returns a tuple with the following three entries: + * A list of matched track and detection indices. + * A list of unmatched track indices. + * A list of unmatched detection indices. + + """ + if track_indices is None: + track_indices = list(range(len(tracks))) + if detection_indices is None: + detection_indices = list(range(len(detections))) + + unmatched_detections = detection_indices + matches = [] + for level in range(cascade_depth): + if len(unmatched_detections) == 0: # No detections left + break + + track_indices_l = [ + k for k in track_indices + if tracks[k].time_since_update == 1 + level + ] + if len(track_indices_l) == 0: # Nothing to match at this level + continue + + matches_l, _, unmatched_detections = \ + min_cost_matching( + distance_metric, max_distance, tracks, detections, + track_indices_l, unmatched_detections) + matches += matches_l + unmatched_tracks = list(set(track_indices) - set(k for k, _ in matches)) + return matches, unmatched_tracks, unmatched_detections + + +def gate_cost_matrix( + kf, cost_matrix, tracks, detections, track_indices, detection_indices, + gated_cost=INFTY_COST, only_position=False): + """Invalidate infeasible entries in cost matrix based on the state + distributions obtained by Kalman filtering. + + Parameters + ---------- + kf : The Kalman filter. + cost_matrix : ndarray + The NxM dimensional cost matrix, where N is the number of track indices + and M is the number of detection indices, such that entry (i, j) is the + association cost between `tracks[track_indices[i]]` and + `detections[detection_indices[j]]`. + tracks : List[track.Track] + A list of predicted tracks at the current time step. + detections : List[detection.Detection] + A list of detections at the current time step. + track_indices : List[int] + List of track indices that maps rows in `cost_matrix` to tracks in + `tracks` (see description above). + detection_indices : List[int] + List of detection indices that maps columns in `cost_matrix` to + detections in `detections` (see description above). + gated_cost : Optional[float] + Entries in the cost matrix corresponding to infeasible associations are + set this value. Defaults to a very large value. + only_position : Optional[bool] + If True, only the x, y position of the state distribution is considered + during gating. Defaults to False. + + Returns + ------- + ndarray + Returns the modified cost matrix. + + """ + gating_dim = 2 if only_position else 4 + gating_threshold = kalman_filter.chi2inv95[gating_dim] + measurements = np.asarray( + [detections[i].to_xyah() for i in detection_indices]) + for row, track_idx in enumerate(track_indices): + track = tracks[track_idx] + gating_distance = kf.gating_distance( + track.mean, track.covariance, measurements, only_position) + cost_matrix[row, gating_distance > gating_threshold] = gated_cost + return cost_matrix diff --git a/deep_sort_pytorch/deep_sort/sort/nn_matching.py b/deep_sort_pytorch/deep_sort/sort/nn_matching.py new file mode 100644 index 0000000..21e5b4f --- /dev/null +++ b/deep_sort_pytorch/deep_sort/sort/nn_matching.py @@ -0,0 +1,176 @@ +# vim: expandtab:ts=4:sw=4 +import numpy as np + + +def _pdist(a, b): + """Compute pair-wise squared distance between points in `a` and `b`. + + Parameters + ---------- + a : array_like + An NxM matrix of N samples of dimensionality M. + b : array_like + An LxM matrix of L samples of dimensionality M. + + Returns + ------- + ndarray + Returns a matrix of size len(a), len(b) such that eleement (i, j) + contains the squared distance between `a[i]` and `b[j]`. + + """ + a, b = np.asarray(a), np.asarray(b) + if len(a) == 0 or len(b) == 0: + return np.zeros((len(a), len(b))) + a2, b2 = np.square(a).sum(axis=1), np.square(b).sum(axis=1) + r2 = -2. * np.dot(a, b.T) + a2[:, None] + b2[None, :] + r2 = np.clip(r2, 0., float(np.inf)) + return r2 + + +def _cosine_distance(a, b, data_is_normalized=False): + """Compute pair-wise cosine distance between points in `a` and `b`. + + Parameters + ---------- + a : array_like + An NxM matrix of N samples of dimensionality M. + b : array_like + An LxM matrix of L samples of dimensionality M. + data_is_normalized : Optional[bool] + If True, assumes rows in a and b are unit length vectors. + Otherwise, a and b are explicitly normalized to lenght 1. + + Returns + ------- + ndarray + Returns a matrix of size len(a), len(b) such that eleement (i, j) + contains the squared distance between `a[i]` and `b[j]`. + + """ + if not data_is_normalized: + a = np.asarray(a) / np.linalg.norm(a, axis=1, keepdims=True) + b = np.asarray(b) / np.linalg.norm(b, axis=1, keepdims=True) + return 1. - np.dot(a, b.T) + + +def _nn_euclidean_distance(x, y): + """ Helper function for nearest neighbor distance metric (Euclidean). + + Parameters + ---------- + x : ndarray + A matrix of N row-vectors (sample points). + y : ndarray + A matrix of M row-vectors (query points). + + Returns + ------- + ndarray + A vector of length M that contains for each entry in `y` the + smallest Euclidean distance to a sample in `x`. + + """ + distances = _pdist(x, y) + return np.maximum(0.0, distances.min(axis=0)) + + +def _nn_cosine_distance(x, y): + """ Helper function for nearest neighbor distance metric (cosine). + + Parameters + ---------- + x : ndarray + A matrix of N row-vectors (sample points). + y : ndarray + A matrix of M row-vectors (query points). + + Returns + ------- + ndarray + A vector of length M that contains for each entry in `y` the + smallest cosine distance to a sample in `x`. + + """ + distances = _cosine_distance(x, y) + return distances.min(axis=0) + + +class NearestNeighborDistanceMetric(object): + """ + A nearest neighbor distance metric that, for each target, returns + the closest distance to any sample that has been observed so far. + + Parameters + ---------- + metric : str + Either "euclidean" or "cosine". + matching_threshold: float + The matching threshold. Samples with larger distance are considered an + invalid match. + budget : Optional[int] + If not None, fix samples per class to at most this number. Removes + the oldest samples when the budget is reached. + + Attributes + ---------- + samples : Dict[int -> List[ndarray]] + A dictionary that maps from target identities to the list of samples + that have been observed so far. + + """ + + def __init__(self, metric, matching_threshold, budget=None): + + if metric == "euclidean": + self._metric = _nn_euclidean_distance + elif metric == "cosine": + self._metric = _nn_cosine_distance + else: + raise ValueError( + "Invalid metric; must be either 'euclidean' or 'cosine'") + self.matching_threshold = matching_threshold + self.budget = budget + self.samples = {} + + def partial_fit(self, features, targets, active_targets): + """Update the distance metric with new data. + + Parameters + ---------- + features : ndarray + An NxM matrix of N features of dimensionality M. + targets : ndarray + An integer array of associated target identities. + active_targets : List[int] + A list of targets that are currently present in the scene. + + """ + for feature, target in zip(features, targets): + self.samples.setdefault(target, []).append(feature) + if self.budget is not None: + self.samples[target] = self.samples[target][-self.budget:] + self.samples = {k: self.samples[k] for k in active_targets} + + def distance(self, features, targets): + """Compute distance between features and targets. + + Parameters + ---------- + features : ndarray + An NxM matrix of N features of dimensionality M. + targets : List[int] + A list of targets to match the given `features` against. + + Returns + ------- + ndarray + Returns a cost matrix of shape len(targets), len(features), where + element (i, j) contains the closest squared distance between + `targets[i]` and `features[j]`. + + """ + cost_matrix = np.zeros((len(targets), len(features))) + for i, target in enumerate(targets): + cost_matrix[i, :] = self._metric(self.samples[target], features) + return cost_matrix diff --git a/deep_sort_pytorch/deep_sort/sort/preprocessing.py b/deep_sort_pytorch/deep_sort/sort/preprocessing.py new file mode 100644 index 0000000..5493b12 --- /dev/null +++ b/deep_sort_pytorch/deep_sort/sort/preprocessing.py @@ -0,0 +1,73 @@ +# vim: expandtab:ts=4:sw=4 +import numpy as np +import cv2 + + +def non_max_suppression(boxes, max_bbox_overlap, scores=None): + """Suppress overlapping detections. + + Original code from [1]_ has been adapted to include confidence score. + + .. [1] http://www.pyimagesearch.com/2015/02/16/ + faster-non-maximum-suppression-python/ + + Examples + -------- + + >>> boxes = [d.roi for d in detections] + >>> scores = [d.confidence for d in detections] + >>> indices = non_max_suppression(boxes, max_bbox_overlap, scores) + >>> detections = [detections[i] for i in indices] + + Parameters + ---------- + boxes : ndarray + Array of ROIs (x, y, width, height). + max_bbox_overlap : float + ROIs that overlap more than this values are suppressed. + scores : Optional[array_like] + Detector confidence score. + + Returns + ------- + List[int] + Returns indices of detections that have survived non-maxima suppression. + + """ + if len(boxes) == 0: + return [] + + boxes = boxes.astype(np.float) + pick = [] + + x1 = boxes[:, 0] + y1 = boxes[:, 1] + x2 = boxes[:, 2] + boxes[:, 0] + y2 = boxes[:, 3] + boxes[:, 1] + + area = (x2 - x1 + 1) * (y2 - y1 + 1) + if scores is not None: + idxs = np.argsort(scores) + else: + idxs = np.argsort(y2) + + while len(idxs) > 0: + last = len(idxs) - 1 + i = idxs[last] + pick.append(i) + + xx1 = np.maximum(x1[i], x1[idxs[:last]]) + yy1 = np.maximum(y1[i], y1[idxs[:last]]) + xx2 = np.minimum(x2[i], x2[idxs[:last]]) + yy2 = np.minimum(y2[i], y2[idxs[:last]]) + + w = np.maximum(0, xx2 - xx1 + 1) + h = np.maximum(0, yy2 - yy1 + 1) + + overlap = (w * h) / area[idxs[:last]] + + idxs = np.delete( + idxs, np.concatenate( + ([last], np.where(overlap > max_bbox_overlap)[0]))) + + return pick diff --git a/deep_sort_pytorch/deep_sort/sort/track.py b/deep_sort_pytorch/deep_sort/sort/track.py new file mode 100644 index 0000000..88a19ec --- /dev/null +++ b/deep_sort_pytorch/deep_sort/sort/track.py @@ -0,0 +1,158 @@ +import datetime + +class TrackState: + """ + Enumeration type for the single target track state. Newly created tracks are + classified as `tentative` until enough evidence has been collected. Then, + the track state is changed to `confirmed`. Tracks that are no longer alive + are classified as `deleted` to mark them for removal from the set of active + tracks. + """ + + Tentative = 1 + Confirmed = 2 + Deleted = 3 + + +class Track: + """ + A single target track with state space `(x, y, a, h)` and associated + velocities, where `(x, y)` is the center of the bounding box, `a` is the + aspect ratio and `h` is the height. + Parameters + ---------- + mean : ndarray + Mean vector of the initial state distribution. + covariance : ndarray + Covariance matrix of the initial state distribution. + track_id : int + A unique track identifier. + n_init : int + Number of consecutive detections before the track is confirmed. The + track state is set to `Deleted` if a miss occurs within the first + `n_init` frames. + max_age : int + The maximum number of consecutive misses before the track state is + set to `Deleted`. + feature : Optional[ndarray] + Feature vector of the detection this track originates from. If not None, + this feature is added to the `features` cache. + Attributes + ---------- + mean : ndarray + Mean vector of the initial state distribution. + covariance : ndarray + Covariance matrix of the initial state distribution. + track_id : int + A unique track identifier. + hits : int + Total number of measurement updates. + age : int + Total number of frames since first occurance. + time_since_update : int + Total number of frames since last measurement update. + state : TrackState + The current track state. + features : List[ndarray] + A cache of features. On each measurement update, the associated feature + vector is added to this list. + """ + + def __init__(self, mean, covariance, track_id, n_init, max_age, cls, confidence, + feature=None): + self.mean = mean + self.covariance = covariance + self.track_id = track_id + self.hits = 1 + self.age = 1 + self.time_since_update = 0 + self.cls = cls + self.score = confidence + self.start_time = datetime.datetime.now() + + self.state = TrackState.Tentative + self.features = [] + if feature is not None: + self.features.append(feature) + + self._n_init = n_init + self._max_age = max_age + + def to_tlwh(self): + """Get current position in bounding box format `(top left x, top left y, + width, height)`. + Returns + ------- + ndarray + The bounding box. + """ + ret = self.mean[:4].copy() + ret[2] *= ret[3] + ret[:2] -= ret[2:] / 2 + return ret + + def to_tlbr(self): + """Get current position in bounding box format `(min x, miny, max x, + max y)`. + Returns + ------- + ndarray + The bounding box. + """ + ret = self.to_tlwh() + ret[2:] = ret[:2] + ret[2:] + return ret + + def predict(self, kf): + """Propagate the state distribution to the current time step using a + Kalman filter prediction step. + Parameters + ---------- + kf : kalman_filter.KalmanFilter + The Kalman filter. + """ + self.mean, self.covariance = kf.predict(self.mean, self.covariance) + self.age += 1 + self.time_since_update += 1 + + def update(self, kf, detection): + """Perform Kalman filter measurement update step and update the feature + cache. + Parameters + ---------- + kf : kalman_filter.KalmanFilter + The Kalman filter. + detection : Detection + The associated detection. + """ + self.mean, self.covariance = kf.update( + self.mean, self.covariance, detection.to_xyah()) + self.features.append(detection.feature) + self.cls = detection.clses + self.score = detection.confidence + + self.hits += 1 + self.time_since_update = 0 + if self.state == TrackState.Tentative and self.hits >= self._n_init: + self.state = TrackState.Confirmed + + def mark_missed(self): + """Mark this track as missed (no association at the current time step). + """ + if self.state == TrackState.Tentative: + self.state = TrackState.Deleted + elif self.time_since_update > self._max_age: + self.state = TrackState.Deleted + + def is_tentative(self): + """Returns True if this track is tentative (unconfirmed). + """ + return self.state == TrackState.Tentative + + def is_confirmed(self): + """Returns True if this track is confirmed.""" + return self.state == TrackState.Confirmed + + def is_deleted(self): + """Returns True if this track is dead and should be deleted.""" + return self.state == TrackState.Deleted \ No newline at end of file diff --git a/deep_sort_pytorch/deep_sort/sort/tracker.py b/deep_sort_pytorch/deep_sort/sort/tracker.py new file mode 100644 index 0000000..8367462 --- /dev/null +++ b/deep_sort_pytorch/deep_sort/sort/tracker.py @@ -0,0 +1,136 @@ +# vim: expandtab:ts=4:sw=4 +from __future__ import absolute_import +import numpy as np +from . import kalman_filter +from . import linear_assignment +from . import iou_matching +from .track import Track + +a = 1 +class Tracker: + """ + This is the multi-target tracker. + Parameters + ---------- + metric : nn_matching.NearestNeighborDistanceMetric + A distance metric for measurement-to-track association. + max_age : int + Maximum number of missed misses before a track is deleted. + n_init : int + Number of consecutive detections before the track is confirmed. The + track state is set to `Deleted` if a miss occurs within the first + `n_init` frames. + Attributes + ---------- + metric : nn_matching.NearestNeighborDistanceMetric + The distance metric used for measurement to track association. + max_age : int + Maximum number of missed misses before a track is deleted. + n_init : int + Number of frames that a track remains in initialization phase. + kf : kalman_filter.KalmanFilter + A Kalman filter to filter target trajectories in image space. + tracks : List[Track] + The list of active tracks at the current time step. + """ + + def __init__(self, metric, max_iou_distance=0.7, max_age=70, n_init=3): + self.metric = metric + self.max_iou_distance = max_iou_distance + self.max_age = max_age + self.n_init = n_init + + self.kf = kalman_filter.KalmanFilter() + self.tracks = [] + self._next_id = a + + def predict(self): + """Propagate track state distributions one time step forward. + This function should be called once every time step, before `update`. + """ + for track in self.tracks: + track.predict(self.kf) + + def update(self, detections): + """Perform measurement update and track management. + Parameters + ---------- + detections : List[deep_sort.detection.Detection] + A list of detections at the current time step. + """ + # Run matching cascade. + matches, unmatched_tracks, unmatched_detections = \ + self._match(detections) + + # Update track set. + for track_idx, detection_idx in matches: + self.tracks[track_idx].update( + self.kf, detections[detection_idx]) + for track_idx in unmatched_tracks: + self.tracks[track_idx].mark_missed() + for detection_idx in unmatched_detections: + new_id = self._initiate_track(detections[detection_idx]) + self._initiate_track(detections[detection_idx]) + self.tracks = [t for t in self.tracks if not t.is_deleted()] + + # Update distance metric. + active_targets = [t.track_id for t in self.tracks if t.is_confirmed()] + features, targets = [], [] + for track in self.tracks: + if not track.is_confirmed(): + continue + features += track.features + targets += [track.track_id for _ in track.features] + track.features = [] + self.metric.partial_fit( + np.asarray(features), np.asarray(targets), active_targets) + + def _match(self, detections): + + def gated_metric(tracks, dets, track_indices, detection_indices): + features = np.array([dets[i].feature for i in detection_indices]) + targets = np.array([tracks[i].track_id for i in track_indices]) + cost_matrix = self.metric.distance(features, targets) + cost_matrix = linear_assignment.gate_cost_matrix( + self.kf, cost_matrix, tracks, dets, track_indices, + detection_indices) + + return cost_matrix + + # Split track set into confirmed and unconfirmed tracks. + confirmed_tracks = [ + i for i, t in enumerate(self.tracks) if t.is_confirmed()] + unconfirmed_tracks = [ + i for i, t in enumerate(self.tracks) if not t.is_confirmed()] + + # Associate confirmed tracks using appearance features. + matches_a, unmatched_tracks_a, unmatched_detections = \ + linear_assignment.matching_cascade( + gated_metric, self.metric.matching_threshold, self.max_age, + self.tracks, detections, confirmed_tracks) + + # Associate remaining tracks together with unconfirmed tracks using IOU. + iou_track_candidates = unconfirmed_tracks + [ + k for k in unmatched_tracks_a if + self.tracks[k].time_since_update == 1] + unmatched_tracks_a = [ + k for k in unmatched_tracks_a if + self.tracks[k].time_since_update != 1] + matches_b, unmatched_tracks_b, unmatched_detections = \ + linear_assignment.min_cost_matching( + iou_matching.iou_cost, self.max_iou_distance, self.tracks, + detections, iou_track_candidates, unmatched_detections) + + matches = matches_a + matches_b + unmatched_tracks = list(set(unmatched_tracks_a + unmatched_tracks_b)) + return matches, unmatched_tracks, unmatched_detections + + def _initiate_track(self, detection): + mean, covariance = self.kf.initiate(detection.to_xyah()) + cls = detection.clses + score = detection.confidence + self.tracks.append(Track( + mean, covariance, self._next_id, self.n_init, self.max_age, cls, score,detection.feature)) + self._next_id += 1 + a = self._next_id + return (self._next_id-1) \ No newline at end of file diff --git a/deep_sort_pytorch/utils/__init__.py b/deep_sort_pytorch/utils/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/deep_sort_pytorch/utils/asserts.py b/deep_sort_pytorch/utils/asserts.py new file mode 100644 index 0000000..59a73cc --- /dev/null +++ b/deep_sort_pytorch/utils/asserts.py @@ -0,0 +1,13 @@ +from os import environ + + +def assert_in(file, files_to_check): + if file not in files_to_check: + raise AssertionError("{} does not exist in the list".format(str(file))) + return True + + +def assert_in_env(check_list: list): + for item in check_list: + assert_in(item, environ.keys()) + return True diff --git a/deep_sort_pytorch/utils/draw.py b/deep_sort_pytorch/utils/draw.py new file mode 100644 index 0000000..bc7cb53 --- /dev/null +++ b/deep_sort_pytorch/utils/draw.py @@ -0,0 +1,36 @@ +import numpy as np +import cv2 + +palette = (2 ** 11 - 1, 2 ** 15 - 1, 2 ** 20 - 1) + + +def compute_color_for_labels(label): + """ + Simple function that adds fixed color depending on the class + """ + color = [int((p * (label ** 2 - label + 1)) % 255) for p in palette] + return tuple(color) + + +def draw_boxes(img, bbox, identities=None, offset=(0,0)): + for i,box in enumerate(bbox): + x1,y1,x2,y2 = [int(i) for i in box] + x1 += offset[0] + x2 += offset[0] + y1 += offset[1] + y2 += offset[1] + # box text and bar + id = int(identities[i]) if identities is not None else 0 + color = compute_color_for_labels(id) + label = '{}{:d}'.format("", id) + t_size = cv2.getTextSize(label, cv2.FONT_HERSHEY_PLAIN, 2 , 2)[0] + cv2.rectangle(img,(x1, y1),(x2,y2),color,3) + cv2.rectangle(img,(x1, y1),(x1+t_size[0]+3,y1+t_size[1]+4), color,-1) + cv2.putText(img,label,(x1,y1+t_size[1]+4), cv2.FONT_HERSHEY_PLAIN, 2, [255,255,255], 2) + return img + + + +if __name__ == '__main__': + for i in range(82): + print(compute_color_for_labels(i)) diff --git a/deep_sort_pytorch/utils/evaluation.py b/deep_sort_pytorch/utils/evaluation.py new file mode 100644 index 0000000..1001794 --- /dev/null +++ b/deep_sort_pytorch/utils/evaluation.py @@ -0,0 +1,103 @@ +import os +import numpy as np +import copy +import motmetrics as mm +mm.lap.default_solver = 'lap' +from utils.io import read_results, unzip_objs + + +class Evaluator(object): + + def __init__(self, data_root, seq_name, data_type): + self.data_root = data_root + self.seq_name = seq_name + self.data_type = data_type + + self.load_annotations() + self.reset_accumulator() + + def load_annotations(self): + assert self.data_type == 'mot' + + gt_filename = os.path.join(self.data_root, self.seq_name, 'gt', 'gt.txt') + self.gt_frame_dict = read_results(gt_filename, self.data_type, is_gt=True) + self.gt_ignore_frame_dict = read_results(gt_filename, self.data_type, is_ignore=True) + + def reset_accumulator(self): + self.acc = mm.MOTAccumulator(auto_id=True) + + def eval_frame(self, frame_id, trk_tlwhs, trk_ids, rtn_events=False): + # results + trk_tlwhs = np.copy(trk_tlwhs) + trk_ids = np.copy(trk_ids) + + # gts + gt_objs = self.gt_frame_dict.get(frame_id, []) + gt_tlwhs, gt_ids = unzip_objs(gt_objs)[:2] + + # ignore boxes + ignore_objs = self.gt_ignore_frame_dict.get(frame_id, []) + ignore_tlwhs = unzip_objs(ignore_objs)[0] + + + # remove ignored results + keep = np.ones(len(trk_tlwhs), dtype=bool) + iou_distance = mm.distances.iou_matrix(ignore_tlwhs, trk_tlwhs, max_iou=0.5) + if len(iou_distance) > 0: + match_is, match_js = mm.lap.linear_sum_assignment(iou_distance) + match_is, match_js = map(lambda a: np.asarray(a, dtype=int), [match_is, match_js]) + match_ious = iou_distance[match_is, match_js] + + match_js = np.asarray(match_js, dtype=int) + match_js = match_js[np.logical_not(np.isnan(match_ious))] + keep[match_js] = False + trk_tlwhs = trk_tlwhs[keep] + trk_ids = trk_ids[keep] + + # get distance matrix + iou_distance = mm.distances.iou_matrix(gt_tlwhs, trk_tlwhs, max_iou=0.5) + + # acc + self.acc.update(gt_ids, trk_ids, iou_distance) + + if rtn_events and iou_distance.size > 0 and hasattr(self.acc, 'last_mot_events'): + events = self.acc.last_mot_events # only supported by https://github.com/longcw/py-motmetrics + else: + events = None + return events + + def eval_file(self, filename): + self.reset_accumulator() + + result_frame_dict = read_results(filename, self.data_type, is_gt=False) + frames = sorted(list(set(self.gt_frame_dict.keys()) | set(result_frame_dict.keys()))) + for frame_id in frames: + trk_objs = result_frame_dict.get(frame_id, []) + trk_tlwhs, trk_ids = unzip_objs(trk_objs)[:2] + self.eval_frame(frame_id, trk_tlwhs, trk_ids, rtn_events=False) + + return self.acc + + @staticmethod + def get_summary(accs, names, metrics=('mota', 'num_switches', 'idp', 'idr', 'idf1', 'precision', 'recall')): + names = copy.deepcopy(names) + if metrics is None: + metrics = mm.metrics.motchallenge_metrics + metrics = copy.deepcopy(metrics) + + mh = mm.metrics.create() + summary = mh.compute_many( + accs, + metrics=metrics, + names=names, + generate_overall=True + ) + + return summary + + @staticmethod + def save_summary(summary, filename): + import pandas as pd + writer = pd.ExcelWriter(filename) + summary.to_excel(writer) + writer.save() diff --git a/deep_sort_pytorch/utils/io.py b/deep_sort_pytorch/utils/io.py new file mode 100644 index 0000000..2dc9afd --- /dev/null +++ b/deep_sort_pytorch/utils/io.py @@ -0,0 +1,133 @@ +import os +from typing import Dict +import numpy as np + +# from utils.log import get_logger + + +def write_results(filename, results, data_type): + if data_type == 'mot': + save_format = '{frame},{id},{x1},{y1},{w},{h},-1,-1,-1,-1\n' + elif data_type == 'kitti': + save_format = '{frame} {id} pedestrian 0 0 -10 {x1} {y1} {x2} {y2} -10 -10 -10 -1000 -1000 -1000 -10\n' + else: + raise ValueError(data_type) + + with open(filename, 'w') as f: + for frame_id, tlwhs, track_ids in results: + if data_type == 'kitti': + frame_id -= 1 + for tlwh, track_id in zip(tlwhs, track_ids): + if track_id < 0: + continue + x1, y1, w, h = tlwh + x2, y2 = x1 + w, y1 + h + line = save_format.format(frame=frame_id, id=track_id, x1=x1, y1=y1, x2=x2, y2=y2, w=w, h=h) + f.write(line) + + +# def write_results(filename, results_dict: Dict, data_type: str): +# if not filename: +# return +# path = os.path.dirname(filename) +# if not os.path.exists(path): +# os.makedirs(path) + +# if data_type in ('mot', 'mcmot', 'lab'): +# save_format = '{frame},{id},{x1},{y1},{w},{h},1,-1,-1,-1\n' +# elif data_type == 'kitti': +# save_format = '{frame} {id} pedestrian -1 -1 -10 {x1} {y1} {x2} {y2} -1 -1 -1 -1000 -1000 -1000 -10 {score}\n' +# else: +# raise ValueError(data_type) + +# with open(filename, 'w') as f: +# for frame_id, frame_data in results_dict.items(): +# if data_type == 'kitti': +# frame_id -= 1 +# for tlwh, track_id in frame_data: +# if track_id < 0: +# continue +# x1, y1, w, h = tlwh +# x2, y2 = x1 + w, y1 + h +# line = save_format.format(frame=frame_id, id=track_id, x1=x1, y1=y1, x2=x2, y2=y2, w=w, h=h, score=1.0) +# f.write(line) +# logger.info('Save results to {}'.format(filename)) + + +def read_results(filename, data_type: str, is_gt=False, is_ignore=False): + if data_type in ('mot', 'lab'): + read_fun = read_mot_results + else: + raise ValueError('Unknown data type: {}'.format(data_type)) + + return read_fun(filename, is_gt, is_ignore) + + +""" +labels={'ped', ... % 1 +'person_on_vhcl', ... % 2 +'car', ... % 3 +'bicycle', ... % 4 +'mbike', ... % 5 +'non_mot_vhcl', ... % 6 +'static_person', ... % 7 +'distractor', ... % 8 +'occluder', ... % 9 +'occluder_on_grnd', ... %10 +'occluder_full', ... % 11 +'reflection', ... % 12 +'crowd' ... % 13 +}; +""" + + +def read_mot_results(filename, is_gt, is_ignore): + valid_labels = {1} + ignore_labels = {2, 7, 8, 12} + results_dict = dict() + if os.path.isfile(filename): + with open(filename, 'r') as f: + for line in f.readlines(): + linelist = line.split(',') + if len(linelist) < 7: + continue + fid = int(linelist[0]) + if fid < 1: + continue + results_dict.setdefault(fid, list()) + + if is_gt: + if 'MOT16-' in filename or 'MOT17-' in filename: + label = int(float(linelist[7])) + mark = int(float(linelist[6])) + if mark == 0 or label not in valid_labels: + continue + score = 1 + elif is_ignore: + if 'MOT16-' in filename or 'MOT17-' in filename: + label = int(float(linelist[7])) + vis_ratio = float(linelist[8]) + if label not in ignore_labels and vis_ratio >= 0: + continue + else: + continue + score = 1 + else: + score = float(linelist[6]) + + tlwh = tuple(map(float, linelist[2:6])) + target_id = int(linelist[1]) + + results_dict[fid].append((tlwh, target_id, score)) + + return results_dict + + +def unzip_objs(objs): + if len(objs) > 0: + tlwhs, ids, scores = zip(*objs) + else: + tlwhs, ids, scores = [], [], [] + tlwhs = np.asarray(tlwhs, dtype=float).reshape(-1, 4) + + return tlwhs, ids, scores \ No newline at end of file diff --git a/deep_sort_pytorch/utils/json_logger.py b/deep_sort_pytorch/utils/json_logger.py new file mode 100644 index 0000000..0afd0b4 --- /dev/null +++ b/deep_sort_pytorch/utils/json_logger.py @@ -0,0 +1,383 @@ +""" +References: + https://medium.com/analytics-vidhya/creating-a-custom-logging-mechanism-for-real-time-object-detection-using-tdd-4ca2cfcd0a2f +""" +import json +from os import makedirs +from os.path import exists, join +from datetime import datetime + + +class JsonMeta(object): + HOURS = 3 + MINUTES = 59 + SECONDS = 59 + PATH_TO_SAVE = 'LOGS' + DEFAULT_FILE_NAME = 'remaining' + + +class BaseJsonLogger(object): + """ + This is the base class that returns __dict__ of its own + it also returns the dicts of objects in the attributes that are list instances + + """ + + def dic(self): + # returns dicts of objects + out = {} + for k, v in self.__dict__.items(): + if hasattr(v, 'dic'): + out[k] = v.dic() + elif isinstance(v, list): + out[k] = self.list(v) + else: + out[k] = v + return out + + @staticmethod + def list(values): + # applies the dic method on items in the list + return [v.dic() if hasattr(v, 'dic') else v for v in values] + + +class Label(BaseJsonLogger): + """ + For each bounding box there are various categories with confidences. Label class keeps track of that information. + """ + + def __init__(self, category: str, confidence: float): + self.category = category + self.confidence = confidence + + +class Bbox(BaseJsonLogger): + """ + This module stores the information for each frame and use them in JsonParser + Attributes: + labels (list): List of label module. + top (int): + left (int): + width (int): + height (int): + + Args: + bbox_id (float): + top (int): + left (int): + width (int): + height (int): + + References: + Check Label module for better understanding. + + + """ + + def __init__(self, bbox_id, top, left, width, height): + self.labels = [] + self.bbox_id = bbox_id + self.top = top + self.left = left + self.width = width + self.height = height + + def add_label(self, category, confidence): + # adds category and confidence only if top_k is not exceeded. + self.labels.append(Label(category, confidence)) + + def labels_full(self, value): + return len(self.labels) == value + + +class Frame(BaseJsonLogger): + """ + This module stores the information for each frame and use them in JsonParser + Attributes: + timestamp (float): The elapsed time of captured frame + frame_id (int): The frame number of the captured video + bboxes (list of Bbox objects): Stores the list of bbox objects. + + References: + Check Bbox class for better information + + Args: + timestamp (float): + frame_id (int): + + """ + + def __init__(self, frame_id: int, timestamp: float = None): + self.frame_id = frame_id + self.timestamp = timestamp + self.bboxes = [] + + def add_bbox(self, bbox_id: int, top: int, left: int, width: int, height: int): + bboxes_ids = [bbox.bbox_id for bbox in self.bboxes] + if bbox_id not in bboxes_ids: + self.bboxes.append(Bbox(bbox_id, top, left, width, height)) + else: + raise ValueError("Frame with id: {} already has a Bbox with id: {}".format(self.frame_id, bbox_id)) + + def add_label_to_bbox(self, bbox_id: int, category: str, confidence: float): + bboxes = {bbox.id: bbox for bbox in self.bboxes} + if bbox_id in bboxes.keys(): + res = bboxes.get(bbox_id) + res.add_label(category, confidence) + else: + raise ValueError('the bbox with id: {} does not exists!'.format(bbox_id)) + + +class BboxToJsonLogger(BaseJsonLogger): + """ + ُ This module is designed to automate the task of logging jsons. An example json is used + to show the contents of json file shortly + Example: + { + "video_details": { + "frame_width": 1920, + "frame_height": 1080, + "frame_rate": 20, + "video_name": "/home/gpu/codes/MSD/pedestrian_2/project/public/camera1.avi" + }, + "frames": [ + { + "frame_id": 329, + "timestamp": 3365.1254 + "bboxes": [ + { + "labels": [ + { + "category": "pedestrian", + "confidence": 0.9 + } + ], + "bbox_id": 0, + "top": 1257, + "left": 138, + "width": 68, + "height": 109 + } + ] + }], + + Attributes: + frames (dict): It's a dictionary that maps each frame_id to json attributes. + video_details (dict): information about video file. + top_k_labels (int): shows the allowed number of labels + start_time (datetime object): we use it to automate the json output by time. + + Args: + top_k_labels (int): shows the allowed number of labels + + """ + + def __init__(self, top_k_labels: int = 1): + self.frames = {} + self.video_details = self.video_details = dict(frame_width=None, frame_height=None, frame_rate=None, + video_name=None) + self.top_k_labels = top_k_labels + self.start_time = datetime.now() + + def set_top_k(self, value): + self.top_k_labels = value + + def frame_exists(self, frame_id: int) -> bool: + """ + Args: + frame_id (int): + + Returns: + bool: true if frame_id is recognized + """ + return frame_id in self.frames.keys() + + def add_frame(self, frame_id: int, timestamp: float = None) -> None: + """ + Args: + frame_id (int): + timestamp (float): opencv captured frame time property + + Raises: + ValueError: if frame_id would not exist in class frames attribute + + Returns: + None + + """ + if not self.frame_exists(frame_id): + self.frames[frame_id] = Frame(frame_id, timestamp) + else: + raise ValueError("Frame id: {} already exists".format(frame_id)) + + def bbox_exists(self, frame_id: int, bbox_id: int) -> bool: + """ + Args: + frame_id: + bbox_id: + + Returns: + bool: if bbox exists in frame bboxes list + """ + bboxes = [] + if self.frame_exists(frame_id=frame_id): + bboxes = [bbox.bbox_id for bbox in self.frames[frame_id].bboxes] + return bbox_id in bboxes + + def find_bbox(self, frame_id: int, bbox_id: int): + """ + + Args: + frame_id: + bbox_id: + + Returns: + bbox_id (int): + + Raises: + ValueError: if bbox_id does not exist in the bbox list of specific frame. + """ + if not self.bbox_exists(frame_id, bbox_id): + raise ValueError("frame with id: {} does not contain bbox with id: {}".format(frame_id, bbox_id)) + bboxes = {bbox.bbox_id: bbox for bbox in self.frames[frame_id].bboxes} + return bboxes.get(bbox_id) + + def add_bbox_to_frame(self, frame_id: int, bbox_id: int, top: int, left: int, width: int, height: int) -> None: + """ + + Args: + frame_id (int): + bbox_id (int): + top (int): + left (int): + width (int): + height (int): + + Returns: + None + + Raises: + ValueError: if bbox_id already exist in frame information with frame_id + ValueError: if frame_id does not exist in frames attribute + """ + if self.frame_exists(frame_id): + frame = self.frames[frame_id] + if not self.bbox_exists(frame_id, bbox_id): + frame.add_bbox(bbox_id, top, left, width, height) + else: + raise ValueError( + "frame with frame_id: {} already contains the bbox with id: {} ".format(frame_id, bbox_id)) + else: + raise ValueError("frame with frame_id: {} does not exist".format(frame_id)) + + def add_label_to_bbox(self, frame_id: int, bbox_id: int, category: str, confidence: float): + """ + Args: + frame_id: + bbox_id: + category: + confidence: the confidence value returned from yolo detection + + Returns: + None + + Raises: + ValueError: if labels quota (top_k_labels) exceeds. + """ + bbox = self.find_bbox(frame_id, bbox_id) + if not bbox.labels_full(self.top_k_labels): + bbox.add_label(category, confidence) + else: + raise ValueError("labels in frame_id: {}, bbox_id: {} is fulled".format(frame_id, bbox_id)) + + def add_video_details(self, frame_width: int = None, frame_height: int = None, frame_rate: int = None, + video_name: str = None): + self.video_details['frame_width'] = frame_width + self.video_details['frame_height'] = frame_height + self.video_details['frame_rate'] = frame_rate + self.video_details['video_name'] = video_name + + def output(self): + output = {'video_details': self.video_details} + result = list(self.frames.values()) + output['frames'] = [item.dic() for item in result] + return output + + def json_output(self, output_name): + """ + Args: + output_name: + + Returns: + None + + Notes: + It creates the json output with `output_name` name. + """ + if not output_name.endswith('.json'): + output_name += '.json' + with open(output_name, 'w') as file: + json.dump(self.output(), file) + file.close() + + def set_start(self): + self.start_time = datetime.now() + + def schedule_output_by_time(self, output_dir=JsonMeta.PATH_TO_SAVE, hours: int = 0, minutes: int = 0, + seconds: int = 60) -> None: + """ + Notes: + Creates folder and then periodically stores the jsons on that address. + + Args: + output_dir (str): the directory where output files will be stored + hours (int): + minutes (int): + seconds (int): + + Returns: + None + + """ + end = datetime.now() + interval = 0 + interval += abs(min([hours, JsonMeta.HOURS]) * 3600) + interval += abs(min([minutes, JsonMeta.MINUTES]) * 60) + interval += abs(min([seconds, JsonMeta.SECONDS])) + diff = (end - self.start_time).seconds + + if diff > interval: + output_name = self.start_time.strftime('%Y-%m-%d %H-%M-%S') + '.json' + if not exists(output_dir): + makedirs(output_dir) + output = join(output_dir, output_name) + self.json_output(output_name=output) + self.frames = {} + self.start_time = datetime.now() + + def schedule_output_by_frames(self, frames_quota, frame_counter, output_dir=JsonMeta.PATH_TO_SAVE): + """ + saves as the number of frames quota increases higher. + :param frames_quota: + :param frame_counter: + :param output_dir: + :return: + """ + pass + + def flush(self, output_dir): + """ + Notes: + We use this function to output jsons whenever possible. + like the time that we exit the while loop of opencv. + + Args: + output_dir: + + Returns: + None + + """ + filename = self.start_time.strftime('%Y-%m-%d %H-%M-%S') + '-remaining.json' + output = join(output_dir, filename) + self.json_output(output_name=output) diff --git a/deep_sort_pytorch/utils/log.py b/deep_sort_pytorch/utils/log.py new file mode 100644 index 0000000..0d48757 --- /dev/null +++ b/deep_sort_pytorch/utils/log.py @@ -0,0 +1,17 @@ +import logging + + +def get_logger(name='root'): + formatter = logging.Formatter( + # fmt='%(asctime)s [%(levelname)s]: %(filename)s(%(funcName)s:%(lineno)s) >> %(message)s') + fmt='%(asctime)s [%(levelname)s]: %(message)s', datefmt='%Y-%m-%d %H:%M:%S') + + handler = logging.StreamHandler() + handler.setFormatter(formatter) + + logger = logging.getLogger(name) + logger.setLevel(logging.INFO) + logger.addHandler(handler) + return logger + + diff --git a/deep_sort_pytorch/utils/parser.py b/deep_sort_pytorch/utils/parser.py new file mode 100644 index 0000000..ed39db9 --- /dev/null +++ b/deep_sort_pytorch/utils/parser.py @@ -0,0 +1,40 @@ +import os +import yaml +from easydict import EasyDict as edict + + +class YamlParser(edict): + """ + This is yaml parser based on EasyDict. + """ + + def __init__(self, cfg_dict=None, config_file=None): + if cfg_dict is None: + cfg_dict = {} + + if config_file is not None: + assert(os.path.isfile(config_file)) + with open(config_file, 'r') as fo: + cfg_dict.update(yaml.load(fo.read())) + + super(YamlParser, self).__init__(cfg_dict) + + def merge_from_file(self, config_file): + with open(config_file, 'r') as fo: + print("看看文件名称:{0}".format(config_file)) + self.update(yaml.load(fo.read())) + + def merge_from_dict(self, config_dict): + self.update(config_dict) + + +def get_config(config_file=None): + return YamlParser(config_file=config_file) + + +if __name__ == "__main__": + cfg = YamlParser(config_file="../configs/yolov3.yaml") + cfg.merge_from_file("../configs/deep_sort.yaml") + + import ipdb + ipdb.set_trace() diff --git a/deep_sort_pytorch/utils/tools.py b/deep_sort_pytorch/utils/tools.py new file mode 100644 index 0000000..965fb69 --- /dev/null +++ b/deep_sort_pytorch/utils/tools.py @@ -0,0 +1,39 @@ +from functools import wraps +from time import time + + +def is_video(ext: str): + """ + Returns true if ext exists in + allowed_exts for video files. + + Args: + ext: + + Returns: + + """ + + allowed_exts = ('.mp4', '.webm', '.ogg', '.avi', '.wmv', '.mkv', '.3gp') + return any((ext.endswith(x) for x in allowed_exts)) + + +def tik_tok(func): + """ + keep track of time for each process. + Args: + func: + + Returns: + + """ + @wraps(func) + def _time_it(*args, **kwargs): + start = time() + try: + return func(*args, **kwargs) + finally: + end_ = time() + print("time: {:.03f}s, fps: {:.03f}".format(end_ - start, 1 / (end_ - start))) + + return _time_it diff --git a/detect.py b/detect.py index 16497c7..de011eb 100644 --- a/detect.py +++ b/detect.py @@ -1,4 +1,7 @@ import argparse +import os +import platform +import shutil import time from pathlib import Path @@ -6,38 +9,173 @@ import cv2 import torch import torch.backends.cudnn as cudnn from numpy import random - +from utils.utils import * from models.experimental import attempt_load from utils.datasets import LoadStreams, LoadImages -from utils.general import check_img_size, check_requirements, check_imshow, non_max_suppression, apply_classifier, \ - scale_coords, xyxy2xywh, strip_optimizer, set_logging, increment_path -from utils.plots import plot_one_box -from utils.torch_utils import select_device, load_classifier, time_synchronized, TracedModel +from utils.general import ( + check_img_size, non_max_suppression, apply_classifier, scale_coords, + xyxy2xywh, plot_one_box, strip_optimizer, set_logging) +from utils.torch_utils import select_device, load_classifier, time_synchronized +from utils.general import ( + check_img_size, non_max_suppression, apply_classifier, scale_coords, + xyxy2xywh, plot_one_box, strip_optimizer, set_logging) +# def detect_image(source,out,imgsz = 640,save_img=False,save_txt = False,weights = "./weights/yolov5s.pt"): +# # out, source, weights, view_img, save_txt, imgsz = \ +# # opt.output, opt.source, opt.weights, opt.view_img, opt.save_txt, opt.img_size +# # webcam = source == '0' or source.startswith('rtsp') or source.startswith('http') or source.endswith('.txt') +# webcam = source =='0' +# # Initialize +# set_logging() +# device = select_device('') +# # if os.path.exists(out): +# # shutil.rmtree(out) # delete output folder +# # os.mkdir(out) # make new output folder +# half = device.type != 'cpu' # half precision only supported on CUDA +# +# # Load model +# model = attempt_load(weights, map_location=device) # load FP32 model +# imgsz = check_img_size(imgsz, s=model.stride.max()) # check img_size +# if half: +# model.half() # to FP16 +# +# # Second-stage classifier +# # classify = False +# # if classify: +# # modelc = load_classifier(name='resnet101', n=2) # initialize +# # modelc.load_state_dict(torch.load('weights/resnet101.pt', map_location=device)['model']) # load weights +# # modelc.to(device).eval() +# +# # Set Dataloader +# vid_path, vid_writer = None, None +# if webcam: +# view_img = True +# cudnn.benchmark = True # set True to speed up constant image size inference +# dataset = LoadStreams(source, img_size=imgsz) +# else: +# save_img = True +# view_img = False +# dataset = LoadImages(source, img_size=imgsz) +# +# # Get names and colors +# names = model.module.names if hasattr(model, 'module') else model.names +# colors = [[random.randint(0, 255) for _ in range(3)] for _ in range(len(names))] +# +# # Run inference +# t0 = time.time() +# img = torch.zeros((1, 3, imgsz, imgsz), device=device) # init img +# _ = model(img.half() if half else img) if device.type != 'cpu' else None +# list_file = open("detection.txt", 'w')# run once +# for path, img, im0s, vid_cap in dataset: +# img = torch.from_numpy(img).to(device) +# img = img.half() if half else img.float() # uint8 to fp16/32 +# img /= 255.0 # 0 - 255 to 0.0 - 1.0 +# if img.ndimension() == 3: +# img = img.unsqueeze(0) +# +# # Inference +# t1 = time_synchronized() +# pred = model(img, augment='store_true')[0] +# +# # Apply NMS +# pred = non_max_suppression(pred, 0.4,0.5, agnostic='store_true') +# t2 = time_synchronized() +# +# # # Apply Classifier +# # if classify: +# # pred = apply_classifier(pred, modelc, img, im0s) +# +# # Process detections +# for i, det in enumerate(pred): # detections per image +# if webcam: # batch_size >= 1 +# p, s, im0 = path[i], '%g: ' % i, im0s[i].copy() +# else: +# p, s, im0 = path, '', im0s +# +# save_path = str(Path(out) / Path(p).name) +# txt_path = str(Path(out) / Path(p).stem) + ('_%g' % dataset.frame if dataset.mode == 'video' else '') +# s += '%gx%g ' % img.shape[2:] # print string +# gn = torch.tensor(im0.shape)[[1, 0, 1, 0]] # normalization gain whwh +# if det is not None and len(det): +# # Rescale boxes from img_size to im0 size +# det[:, :4] = scale_coords(img.shape[2:], det[:, :4], im0.shape).round() +# +# # Print results +# for c in det[:, -1].unique(): +# n = (det[:, -1] == c).sum() # detections per class +# s += '%g %ss, ' % (n, names[int(c)]) # add to string +# +# # Write results +# +# +# for *xyxy, conf, cls in reversed(det): +# if save_txt: # Write to file +# xywh = (xyxy2xywh(torch.tensor(xyxy).view(1, 4)) / gn).view(-1).tolist() # normalized xywh +# with open(txt_path + '.txt', 'a') as f: +# f.write(('%g ' * 5 + '\n') % (cls, *xywh)) +# +# # label format +# +# if save_img or view_img: # Add bbox to image +# label = '%s %.2f' % (names[int(cls)], conf) +# plot_one_box(xyxy, im0, label=label, color=colors[int(cls)], line_thickness=3) +# +# # Print time (inference + NMS) +# # with open(os.getcwd()+'output.txt','w') as f: +# # f.write('%sDone. (%.3fs)' % (s, t2 - t1)) +# +# list_file.write('%sDone. (%.3fs)' % (s, t2 - t1)) +# list_file.write('\n') +# print('%sDone. (%.3fs)' % (s, t2 - t1)) +# +# # Stream results +# if view_img: +# cv2.imshow(p, im0) +# if cv2.waitKey(1) == ord('q'): # q to quit +# raise StopIteration +# +# # Save results (image with detections) +# if save_img: +# if dataset.mode == 'images': +# cv2.imwrite(save_path, im0) +# else: +# if vid_path != save_path: # new video +# vid_path = save_path +# if isinstance(vid_writer, cv2.VideoWriter): +# vid_writer.release() # release previous video writer +# +# fourcc = 'mp4v' # output video codec +# fps = vid_cap.get(cv2.CAP_PROP_FPS) +# w = int(vid_cap.get(cv2.CAP_PROP_FRAME_WIDTH)) +# h = int(vid_cap.get(cv2.CAP_PROP_FRAME_HEIGHT)) +# vid_writer = cv2.VideoWriter(save_path, cv2.VideoWriter_fourcc(*fourcc), fps, (w, h)) +# vid_writer.write(im0) +# +# if save_txt or save_img: +# print('Results saved to %s' % Path(out)) +# # if platform.system() == 'Darwin' and not opt.update: # MacOS +# # os.system('open ' + save_path) +# +# print('Done. (%.3fs)' % (time.time() - t0)) def detect(save_img=False): - source, weights, view_img, save_txt, imgsz, trace = opt.source, opt.weights, opt.view_img, opt.save_txt, opt.img_size, not opt.no_trace - save_img = not opt.nosave and not source.endswith('.txt') # save inference images - webcam = source.isnumeric() or source.endswith('.txt') or source.lower().startswith( - ('rtsp://', 'rtmp://', 'http://', 'https://')) - - # Directories - save_dir = Path(increment_path(Path(opt.project) / opt.name, exist_ok=opt.exist_ok)) # increment run - (save_dir / 'labels' if save_txt else save_dir).mkdir(parents=True, exist_ok=True) # make dir - + out, source, weights, view_img, save_txt, imgsz = \ + opt.output, opt.source, opt.weights, opt.view_img, opt.save_txt, opt.img_size + webcam = source.isnumeric() or source.startswith('rtsp') or source.startswith('http') or source.endswith('.txt') + print('-----') + print(source) + print(type(source)) # Initialize set_logging() device = select_device(opt.device) + if os.path.exists(out): + shutil.rmtree(out) # delete output folder + os.makedirs(out) # make new output folder half = device.type != 'cpu' # half precision only supported on CUDA # Load model model = attempt_load(weights, map_location=device) # load FP32 model - stride = int(model.stride.max()) # model stride - imgsz = check_img_size(imgsz, s=stride) # check img_size - - if trace: - model = TracedModel(model, device, opt.img_size) - + imgsz = check_img_size(imgsz, s=model.stride.max()) # check img_size if half: model.half() # to FP16 @@ -45,26 +183,31 @@ def detect(save_img=False): classify = False if classify: modelc = load_classifier(name='resnet101', n=2) # initialize - modelc.load_state_dict(torch.load('weights/resnet101.pt', map_location=device)['model']).to(device).eval() + modelc.load_state_dict(torch.load('weights/resnet101.pt', map_location=device)['model']) # load weights + modelc.to(device).eval() # Set Dataloader vid_path, vid_writer = None, None if webcam: - view_img = check_imshow() + view_img = True cudnn.benchmark = True # set True to speed up constant image size inference - dataset = LoadStreams(source, img_size=imgsz, stride=stride) + dataset = LoadStreams(source, img_size=imgsz) else: - dataset = LoadImages(source, img_size=imgsz, stride=stride) + save_img = True + dataset = LoadImages(source, img_size=imgsz) # Get names and colors names = model.module.names if hasattr(model, 'module') else model.names - colors = [[random.randint(0, 255) for _ in range(3)] for _ in names] + colors = [[random.randint(0, 255) for _ in range(3)] for _ in range(len(names))] # Run inference - if device.type != 'cpu': - model(torch.zeros(1, 3, imgsz, imgsz).to(device).type_as(next(model.parameters()))) # run once t0 = time.time() + img = torch.zeros((1, 3, imgsz, imgsz), device=device) # init img + _ = model(img.half() if half else img) if device.type != 'cpu' else None # run once for path, img, im0s, vid_cap in dataset: + print('path:{0}'.format(path)) + print('im0s:{0}'.format(im0s)) + print('im0s类型:{0}'.format(type(im0s))) img = torch.from_numpy(img).to(device) img = img.half() if half else img.float() # uint8 to fp16/32 img /= 255.0 # 0 - 255 to 0.0 - 1.0 @@ -79,106 +222,114 @@ def detect(save_img=False): pred = non_max_suppression(pred, opt.conf_thres, opt.iou_thres, classes=opt.classes, agnostic=opt.agnostic_nms) t2 = time_synchronized() + + # Apply Classifier if classify: pred = apply_classifier(pred, modelc, img, im0s) + # 用于存储人员边界坐标的列表 ---linjie + people_coords = [] + # Process detections for i, det in enumerate(pred): # detections per image if webcam: # batch_size >= 1 - p, s, im0, frame = path[i], '%g: ' % i, im0s[i].copy(), dataset.count + p, s, im0 = path[i], '%g: ' % i, im0s[i].copy() else: - p, s, im0, frame = path, '', im0s, getattr(dataset, 'frame', 0) + p, s, im0 = path, '', im0s - p = Path(p) # to Path - save_path = str(save_dir / p.name) # img.jpg - txt_path = str(save_dir / 'labels' / p.stem) + ('' if dataset.mode == 'image' else f'_{frame}') # img.txt + save_path = str(Path(out) / Path(p).name) + txt_path = str(Path(out) / Path(p).stem) + ('_%g' % dataset.frame if dataset.mode == 'video' else '') s += '%gx%g ' % img.shape[2:] # print string gn = torch.tensor(im0.shape)[[1, 0, 1, 0]] # normalization gain whwh - if len(det): + if det is not None and len(det): + # print('先看看这里能不能进行,再看看im0多少:{0}。再看看im0类型:{1}'.format(im0,type(im0))) # Rescale boxes from img_size to im0 size det[:, :4] = scale_coords(img.shape[2:], det[:, :4], im0.shape).round() # Print results for c in det[:, -1].unique(): n = (det[:, -1] == c).sum() # detections per class - s += f"{n} {names[int(c)]}{'s' * (n > 1)}, " # add to string + s += '%g %ss, ' % (n, names[int(c)]) # add to string # Write results for *xyxy, conf, cls in reversed(det): if save_txt: # Write to file xywh = (xyxy2xywh(torch.tensor(xyxy).view(1, 4)) / gn).view(-1).tolist() # normalized xywh - line = (cls, *xywh, conf) if opt.save_conf else (cls, *xywh) # label format with open(txt_path + '.txt', 'a') as f: - f.write(('%g ' * len(line)).rstrip() % line + '\n') + f.write(('%g ' * 5 + '\n') % (cls, *xywh)) # label format if save_img or view_img: # Add bbox to image - label = f'{names[int(cls)]} {conf:.2f}' + label = '%s %.2f' % (names[int(cls)], conf) plot_one_box(xyxy, im0, label=label, color=colors[int(cls)], line_thickness=3) + #判断标签是否为人 --linjie + if label is not None: + if (label.split())[0] == 'person': + print('标签是人') + distancing(people_coords, im0, dist_thres_lim=(200, 250)) + people_coords.append(xyxy) + # plot_one_box(xyxy, im0, line_thickness=3) + plot_dots_on_people(xyxy, im0) + + # 画上人与人的连接线 --linjie + distancing(people_coords, im0, dist_thres_lim=(200, 250)) # Print time (inference + NMS) - #print(f'{s}Done. ({t2 - t1:.3f}s)') + print('%sDone. (%.3fs)' % (s, t2 - t1)) # Stream results if view_img: - cv2.imshow(str(p), im0) - cv2.waitKey(1) # 1 millisecond + cv2.imshow(p, im0) + if cv2.waitKey(1) == ord('q'): # q to quit + raise StopIteration # Save results (image with detections) if save_img: - if dataset.mode == 'image': + if dataset.mode == 'images': cv2.imwrite(save_path, im0) - print(f" The image with the result is saved in: {save_path}") - else: # 'video' or 'stream' + else: if vid_path != save_path: # new video vid_path = save_path if isinstance(vid_writer, cv2.VideoWriter): vid_writer.release() # release previous video writer - if vid_cap: # video - fps = vid_cap.get(cv2.CAP_PROP_FPS) - w = int(vid_cap.get(cv2.CAP_PROP_FRAME_WIDTH)) - h = int(vid_cap.get(cv2.CAP_PROP_FRAME_HEIGHT)) - else: # stream - fps, w, h = 30, im0.shape[1], im0.shape[0] - save_path += '.mp4' - vid_writer = cv2.VideoWriter(save_path, cv2.VideoWriter_fourcc(*'mp4v'), fps, (w, h)) + + fourcc = 'mp4v' # output video codec + fps = vid_cap.get(cv2.CAP_PROP_FPS) + w = int(vid_cap.get(cv2.CAP_PROP_FRAME_WIDTH)) + h = int(vid_cap.get(cv2.CAP_PROP_FRAME_HEIGHT)) + vid_writer = cv2.VideoWriter(save_path, cv2.VideoWriter_fourcc(*fourcc), fps, (w, h)) vid_writer.write(im0) if save_txt or save_img: - s = f"\n{len(list(save_dir.glob('labels/*.txt')))} labels saved to {save_dir / 'labels'}" if save_txt else '' - #print(f"Results saved to {save_dir}{s}") - - print(f'Done. ({time.time() - t0:.3f}s)') - + print('Results saved to %s' % Path(out)) + if platform == 'Darwin' and not opt.update: # MacOS + os.system('open ' + save_path) + print('Done. (%.3fs)' % (time.time() - t0)) if __name__ == '__main__': parser = argparse.ArgumentParser() - parser.add_argument('--weights', nargs='+', type=str, default='yolov7.pt', help='model.pt path(s)') - parser.add_argument('--source', type=str, default='inference/images', help='source') # file/folder--'inference/images' , 0 for webcam + parser.add_argument('--weights', nargs='+', type=str, default='weights/best.pt', help='model.pt path(s)') + parser.add_argument('--source', type=str, default='inference/images', help='source') # file/folder inference/images, 0 for webcam + parser.add_argument('--output', type=str, default='inference/output', help='output folder') # output folder parser.add_argument('--img-size', type=int, default=640, help='inference size (pixels)') - parser.add_argument('--conf-thres', type=float, default=0.25, help='object confidence threshold') - parser.add_argument('--iou-thres', type=float, default=0.45, help='IOU threshold for NMS') + parser.add_argument('--conf-thres', type=float, default=0.4, help='object confidence threshold') + parser.add_argument('--iou-thres', type=float, default=0.5, help='IOU threshold for NMS') parser.add_argument('--device', default='', help='cuda device, i.e. 0 or 0,1,2,3 or cpu') parser.add_argument('--view-img', action='store_true', help='display results') parser.add_argument('--save-txt', action='store_true', help='save results to *.txt') - parser.add_argument('--save-conf', action='store_true', help='save confidences in --save-txt labels') - parser.add_argument('--nosave', action='store_true', help='do not save images/videos') parser.add_argument('--classes', nargs='+', type=int, help='filter by class: --class 0, or --class 0 2 3') parser.add_argument('--agnostic-nms', action='store_true', help='class-agnostic NMS') parser.add_argument('--augment', action='store_true', help='augmented inference') parser.add_argument('--update', action='store_true', help='update all models') - parser.add_argument('--project', default='runs/detect', help='save results to project/name') - parser.add_argument('--name', default='exp', help='save results to project/name') - parser.add_argument('--exist-ok', action='store_true', help='existing project/name ok, do not increment') - parser.add_argument('--no-trace', action='store_true', help='don`t trace model') opt = parser.parse_args() print(opt) - #check_requirements(exclude=('pycocotools', 'thop')) with torch.no_grad(): if opt.update: # update all models (to fix SourceChangeWarning) - for opt.weights in ['yolov7.pt']: + for opt.weights in ['yolov5s.pt', 'yolov5m.pt', 'yolov5l.pt', 'yolov5x.pt']: + print('model1') detect() strip_optimizer(opt.weights) else: + print('model2') detect() diff --git a/inference/images/0062.jpg b/inference/images/0062.jpg new file mode 100644 index 0000000..5eca27e Binary files /dev/null and b/inference/images/0062.jpg differ diff --git a/inference/images/bus.jpg b/inference/images/bus.jpg new file mode 100644 index 0000000..b43e311 Binary files /dev/null and b/inference/images/bus.jpg differ diff --git a/inference/images/children.jpg b/inference/images/children.jpg new file mode 100644 index 0000000..296ab40 Binary files /dev/null and b/inference/images/children.jpg differ diff --git a/inference/images/zidane.jpg b/inference/images/zidane.jpg new file mode 100644 index 0000000..92d72ea Binary files /dev/null and b/inference/images/zidane.jpg differ diff --git a/inference/output/0062.jpg b/inference/output/0062.jpg new file mode 100644 index 0000000..1f70845 Binary files /dev/null and b/inference/output/0062.jpg differ diff --git a/inference/output/bus.jpg b/inference/output/bus.jpg new file mode 100644 index 0000000..148ddf4 Binary files /dev/null and b/inference/output/bus.jpg differ diff --git a/inference/output/children.jpg b/inference/output/children.jpg new file mode 100644 index 0000000..e51fae0 Binary files /dev/null and b/inference/output/children.jpg differ diff --git a/inference/output/zidane.jpg b/inference/output/zidane.jpg new file mode 100644 index 0000000..0d0cfbe Binary files /dev/null and b/inference/output/zidane.jpg differ diff --git a/log.py b/log.py new file mode 100644 index 0000000..fb5f77f --- /dev/null +++ b/log.py @@ -0,0 +1,35 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# @Author : linjie + +import logging.handlers + +class Logger(logging.Logger): + def __init__(self, filename=None): + super(Logger, self).__init__(self) + # 日志文件名 + if filename is None: + filename = 'log.txt' + self.filename = filename + + # 创建一个handler,用于写入日志文件 (每天生成1个,保留30天的日志) + fh = logging.handlers.TimedRotatingFileHandler(self.filename, 'D', 1, 30) + fh.suffix = "%Y%m%d-%H%M.log" + fh.setLevel(logging.INFO) + + # 再创建一个handler,用于输出到控制台 + sh = logging.StreamHandler() + sh.setLevel(logging.INFO) + + # 定义handler的输出格式 + formatter = logging.Formatter('[%(asctime)s] - %(filename)s [Line:%(lineno)d] - [%(levelname)s]-[thread:%(thread)s]-[process:%(process)s] - %(message)s') + fh.setFormatter(formatter) + sh.setFormatter(formatter) + + # 给logger添加handler + self.addHandler(fh) + self.addHandler(sh) + +if __name__ == '__main__': + pass + diff --git a/log.txt b/log.txt new file mode 100644 index 0000000..4a27d67 --- /dev/null +++ b/log.txt @@ -0,0 +1,7047 @@ +[2021-01-17 13:11:55,229] - camera.py [Line:154] - [INFO]-[thread:123145360433152]-[process:5305] - 当前进程:5305.遇到了人 +[2021-01-17 13:11:57,281] - camera.py [Line:154] - [INFO]-[thread:123145360433152]-[process:5305] - 当前进程:5305.遇到了人 +[2021-01-17 13:11:57,568] - camera.py [Line:154] - [INFO]-[thread:123145360433152]-[process:5305] - 当前进程:5305.遇到了人 +[2021-01-17 13:11:57,857] - camera.py [Line:154] - [INFO]-[thread:123145360433152]-[process:5305] - 当前进程:5305.遇到了人 +[2021-01-17 13:11:58,140] - camera.py [Line:154] - [INFO]-[thread:123145360433152]-[process:5305] - 当前进程:5305.遇到了人 +[2021-01-17 13:11:58,423] - camera.py [Line:154] - [INFO]-[thread:123145360433152]-[process:5305] - 当前进程:5305.遇到了人 +[2021-01-17 13:11:58,705] - camera.py [Line:154] - [INFO]-[thread:123145360433152]-[process:5305] - 当前进程:5305.遇到了人 +[2021-01-17 13:11:58,986] - camera.py [Line:154] - [INFO]-[thread:123145360433152]-[process:5305] - 当前进程:5305.遇到了人 +[2021-01-17 13:11:59,266] - camera.py [Line:154] - [INFO]-[thread:123145360433152]-[process:5305] - 当前进程:5305.遇到了人 +[2021-01-17 13:11:59,543] - camera.py [Line:154] - [INFO]-[thread:123145360433152]-[process:5305] - 当前进程:5305.遇到了人 +[2021-01-17 13:11:59,853] - camera.py [Line:154] - [INFO]-[thread:123145360433152]-[process:5305] - 当前进程:5305.遇到了人 +[2021-01-17 13:12:00,163] - camera.py [Line:154] - [INFO]-[thread:123145360433152]-[process:5305] - 当前进程:5305.遇到了人 +[2021-01-17 15:10:50,694] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:51,023] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:51,322] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:51,626] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:51,920] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:52,281] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:52,658] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:52,986] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:53,374] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:53,828] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:54,259] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:54,598] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:54,896] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:55,175] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:55,541] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:55,869] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:56,169] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:56,508] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:56,788] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:57,076] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:57,397] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:57,677] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:57,962] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:58,240] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:58,540] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:58,825] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:59,126] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:59,413] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:59,711] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:10:59,994] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:11:00,310] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:11:00,631] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:11:00,916] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:11:01,296] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:11:01,626] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:11:02,063] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:11:02,396] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:11:02,748] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:11:03,138] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:11:03,451] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:11:03,757] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:11:04,050] - camera.py [Line:155] - [INFO]-[thread:123145315352576]-[process:5466] - 当前进程:5466.遇到了人 +[2021-01-17 15:15:46,779] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:47,096] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:47,458] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:47,766] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:48,114] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:48,440] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:48,752] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:49,067] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:49,377] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:49,695] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:50,011] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:50,305] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:50,586] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:50,863] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:51,151] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:51,430] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:51,719] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:52,000] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:52,280] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:52,607] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:52,904] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:53,205] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:53,546] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:53,862] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:54,180] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:54,515] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:55,166] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:55,523] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:56,011] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:56,459] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:56,914] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:57,279] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:57,665] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:58,318] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:58,794] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:59,095] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:59,400] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:15:59,711] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:00,049] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:00,412] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:00,856] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:01,168] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:01,465] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:01,750] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:02,142] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:02,461] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:02,820] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:03,235] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:03,582] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:03,991] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:04,312] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:04,627] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:04,928] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:05,245] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:05,585] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:05,901] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:06,205] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:06,511] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:06,803] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:07,114] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:07,435] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:07,762] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:08,221] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:08,625] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:09,002] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:09,336] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:09,687] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:10,041] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:10,378] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:10,753] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:11,255] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:11,593] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:12,040] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:12,380] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:12,746] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:13,098] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:13,435] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:13,768] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:14,087] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:14,435] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:14,986] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:15,376] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:15,722] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:16,109] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:16,458] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:16,841] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:17,196] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:17,496] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:17,784] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:18,069] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:18,381] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:18,674] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:18,966] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:19,290] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:19,641] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:20,163] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:20,662] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:21,082] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:21,463] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:22,054] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:22,477] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:22,926] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:23,321] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:23,743] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:24,132] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:24,474] - camera.py [Line:155] - [INFO]-[thread:123145384611840]-[process:5512] - 当前进程:5512.遇到了人 +[2021-01-17 15:16:51,174] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:51,477] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:51,772] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:52,053] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:52,337] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:52,631] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:52,982] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:53,291] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:53,616] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:53,931] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:54,262] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:54,821] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:55,229] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:55,538] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:55,826] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:56,112] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:56,398] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:56,683] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:56,969] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:57,323] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:57,674] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:58,045] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:58,395] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:58,748] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:59,328] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:16:59,759] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:17:00,083] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:17:00,426] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:17:00,822] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:17:01,190] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:17:01,564] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:17:01,900] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:17:02,216] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:17:02,520] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:17:03,032] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:17:03,501] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:17:03,812] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:17:04,116] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:17:04,444] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:17:04,770] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 15:17:05,064] - camera.py [Line:155] - [INFO]-[thread:123145338122240]-[process:5520] - 当前进程:5520.遇到了人 +[2021-01-17 16:10:39,707] - camera.py [Line:220] - [INFO]-[thread:123145376210944]-[process:5871] - 当前进程:5871.遇到了人 +[2021-01-17 16:10:40,138] - camera.py [Line:220] - [INFO]-[thread:123145376210944]-[process:5871] - 当前进程:5871.遇到了人 +[2021-01-17 16:10:40,536] - camera.py [Line:220] - [INFO]-[thread:123145376210944]-[process:5871] - 当前进程:5871.遇到了人 +[2021-01-17 16:11:31,052] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:31,457] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:31,916] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:32,313] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:32,702] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:33,084] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:33,462] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:33,856] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:34,286] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:34,685] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:35,065] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:35,453] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:35,837] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:36,279] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:36,669] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:37,045] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:37,415] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:37,799] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:38,176] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:38,562] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:38,940] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:39,324] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:39,713] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:40,143] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:40,526] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:40,912] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:41,294] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:41,676] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:42,057] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:42,442] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:42,821] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:43,208] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:43,595] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:43,980] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:44,362] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:44,763] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:45,152] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:45,548] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:45,929] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:46,313] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:46,705] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:47,095] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:47,525] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:47,907] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:48,296] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:48,677] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:50,188] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:50,950] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:51,340] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:51,727] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:52,111] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:52,522] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:52,901] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:53,284] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:54,037] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:57,795] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:58,184] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:58,563] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:58,942] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:59,322] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:11:59,711] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:00,101] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:00,488] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:00,871] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:01,250] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:01,630] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:02,064] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:02,467] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:02,850] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:03,229] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:03,611] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:04,006] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:04,404] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:04,837] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:05,223] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:05,602] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:05,979] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:06,360] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:06,749] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:07,131] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:07,514] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:07,897] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:08,287] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:08,680] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:09,064] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:09,454] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:09,834] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:10,226] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:10,608] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:10,993] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:11,383] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:11,775] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:12,158] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:12,540] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:12,923] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:13,305] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:13,686] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:14,072] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:14,455] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:14,850] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:15,235] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:15,618] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:23,169] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:23,553] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:23,932] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:24,314] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:24,698] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:25,078] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:25,459] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:25,834] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:26,208] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:26,596] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:26,983] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:27,371] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:27,753] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:28,131] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:34,173] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:34,559] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:34,947] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:35,344] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:35,738] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:36,116] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:36,502] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:36,887] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:37,300] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:37,712] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:38,136] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:38,548] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:38,936] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:39,327] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:39,737] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:40,119] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:40,502] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:40,891] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:41,283] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:41,666] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:42,049] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:42,432] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:42,811] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:43,194] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:43,586] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:44,032] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:44,432] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:44,866] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:45,284] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:45,677] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 16:12:46,060] - camera.py [Line:220] - [INFO]-[thread:123145436180480]-[process:5881] - 当前进程:5881.遇到了人 +[2021-01-17 19:49:20,726] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:21,177] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:21,582] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:21,984] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:22,366] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:22,750] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:23,139] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:23,527] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:23,960] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:24,338] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:24,715] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:25,140] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:25,564] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:26,183] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:26,728] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:27,505] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:27,959] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:28,416] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:28,821] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:29,220] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:29,614] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:30,001] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:30,443] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:30,883] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:31,326] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:31,828] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:32,274] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:32,714] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:33,148] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:33,605] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:34,035] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:34,464] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:34,904] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:35,333] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:35,765] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:36,208] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:36,762] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:37,445] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:38,090] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:38,612] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:39,077] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:39,563] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:39,955] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:40,377] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:40,786] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:41,193] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:41,592] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:41,980] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:42,390] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 19:49:42,799] - camera.py [Line:223] - [INFO]-[thread:123145513811968]-[process:6648] - 当前进程:6648.遇到了人 +[2021-01-17 20:00:53,533] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:53,536] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:54,093] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:54,094] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:54,617] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:54,618] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:55,137] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:55,138] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:55,583] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:55,584] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:56,017] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:56,018] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:56,442] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:56,443] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:56,869] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:56,870] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:57,290] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:57,291] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:57,723] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:57,724] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:58,188] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:58,189] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:58,767] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:58,768] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:59,433] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:00:59,434] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:00,038] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:00,531] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:00,916] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:01,289] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:01,666] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:02,034] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:02,035] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:02,456] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:02,456] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:02,873] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:03,253] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:03,643] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:04,038] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:04,039] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:04,454] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:04,455] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:04,882] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:04,883] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:05,308] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:05,688] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:06,077] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:06,450] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:06,839] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:07,217] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:07,218] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:07,643] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:07,643] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:08,064] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:08,065] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:08,480] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:08,481] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:08,903] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:08,904] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:09,335] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:09,336] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:09,756] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:09,757] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:10,176] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:10,177] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:10,603] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:10,604] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:11,021] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:11,024] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:11,457] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:11,458] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:11,891] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:11,892] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:12,350] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:12,351] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:12,352] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:12,838] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:12,838] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:12,839] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:13,308] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:13,309] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:13,310] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:13,776] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:13,777] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:13,778] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:14,240] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:14,241] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:14,241] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:14,701] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:14,702] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:14,703] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:15,263] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:15,264] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:15,267] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:15,825] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:15,826] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:15,827] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:16,504] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:16,505] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:16,506] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:17,040] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:17,041] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:17,042] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:17,522] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:17,522] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:17,523] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:17,984] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:17,985] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:17,986] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:18,458] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:18,459] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:18,459] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:18,921] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:18,922] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:18,923] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:19,386] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:19,387] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:19,388] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:19,851] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:19,852] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:19,853] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:20,315] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:20,316] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:20,317] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:20,780] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:20,781] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:20,782] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:21,244] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:21,248] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:21,250] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:21,719] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:21,720] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:21,721] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:22,192] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:22,193] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:22,194] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:22,751] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:22,753] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:22,754] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:23,281] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:23,282] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:23,283] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:24,079] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:24,080] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:24,081] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:24,671] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:24,672] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:24,673] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:25,267] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:25,268] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:25,269] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:25,781] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:25,782] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:25,783] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:26,271] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:26,272] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:26,273] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:26,767] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:26,767] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:26,768] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:27,263] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:27,264] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:27,265] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:27,773] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:27,774] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:27,775] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:28,258] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:28,258] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:28,259] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:28,767] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:28,768] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:29,242] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:29,243] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:29,721] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:29,722] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:30,150] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:30,151] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:30,585] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:30,585] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:31,029] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:31,030] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:31,477] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:31,478] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:31,926] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:31,926] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:32,367] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:32,368] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:32,820] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:32,821] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:33,250] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:33,251] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:33,693] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:33,694] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:34,180] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:34,181] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:34,182] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:34,669] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:34,670] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:34,671] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:35,142] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:35,143] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:35,144] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:35,632] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:35,632] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:35,633] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:36,107] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:36,108] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:36,109] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:36,601] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:36,603] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:36,604] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:37,103] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:37,104] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:37,105] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:37,648] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:37,649] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:37,650] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:38,186] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:38,187] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:38,188] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:38,698] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:38,699] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:38,700] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:39,233] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:39,235] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:39,236] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:39,752] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:39,753] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:39,753] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:40,254] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:40,254] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:40,255] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:40,766] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:40,767] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:40,768] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:41,267] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:41,268] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:41,269] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:41,793] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:41,793] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:41,794] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:42,270] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:42,270] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:42,271] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:42,758] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:42,759] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:43,188] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:43,189] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:43,190] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:43,710] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:43,711] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:43,712] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:44,195] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:44,196] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:44,197] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:44,682] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:44,683] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:44,684] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:45,176] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:45,180] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:45,181] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:45,698] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:45,699] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:45,700] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:46,212] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:46,213] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:46,215] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:46,762] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:46,763] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:46,764] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:47,267] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:47,267] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:47,268] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:47,770] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:47,773] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:47,774] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:48,254] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:48,255] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:48,256] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:48,827] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:48,828] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:48,829] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:49,389] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:49,390] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:49,391] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:49,934] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:49,936] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:49,937] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:50,502] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:50,503] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:50,504] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:51,091] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:51,093] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:51,095] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:51,594] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:51,595] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:51,596] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:52,080] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:52,081] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:52,082] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:52,654] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:52,655] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:52,656] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:53,211] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:53,212] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:53,213] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:53,700] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:53,701] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:53,701] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:54,191] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:54,192] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:54,193] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:54,668] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:54,669] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:54,670] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:55,163] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:55,164] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:55,164] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:55,672] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:55,673] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:55,675] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:56,185] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:56,186] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:56,187] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:56,713] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:56,714] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:56,715] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:57,198] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:57,199] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:57,200] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:57,707] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:57,708] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:58,200] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:58,201] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:58,202] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:58,712] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:58,713] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:58,714] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:59,241] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:59,245] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:59,246] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:59,866] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:59,867] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:01:59,868] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:00,464] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:00,465] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:00,466] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:00,999] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:01,000] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:01,001] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:01,523] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:01,524] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:01,525] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:02,018] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:02,019] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:02,020] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:02,542] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:02,543] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:02,543] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:03,041] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:03,042] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:03,043] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:03,563] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:03,564] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:03,564] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:04,044] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:04,045] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:04,047] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:04,546] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:04,547] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:05,093] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:05,502] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:06,012] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:06,013] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:06,014] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:06,570] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:06,571] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:07,053] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:07,054] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:07,515] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:07,517] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:07,955] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:07,956] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:08,406] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:08,406] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:08,879] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:09,274] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:09,275] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:09,745] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:09,746] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:10,220] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:10,645] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:11,071] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:11,479] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:11,480] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:11,948] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:12,349] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:12,350] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:02:12,350] - camera.py [Line:223] - [INFO]-[thread:123145397506048]-[process:6684] - 当前进程:6684.遇到了人 +[2021-01-17 20:04:20,069] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:20,506] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:20,993] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:21,434] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:21,915] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:22,405] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:22,905] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:23,703] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:24,290] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:24,800] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:25,246] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:25,693] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:26,226] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:26,793] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:27,222] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:27,640] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:28,215] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:28,704] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:29,243] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:29,702] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:30,243] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:30,748] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:31,193] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:31,615] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:32,070] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:32,486] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:32,948] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:33,438] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:33,911] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:34,366] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:34,776] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:35,185] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:35,589] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:36,018] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:36,480] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:36,986] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:37,477] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:37,949] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:38,408] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:38,897] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:39,372] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:39,938] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:40,392] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:40,829] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:41,230] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:41,626] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:42,090] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:42,492] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:42,897] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:43,302] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:43,759] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:44,282] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:44,865] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:45,405] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:45,929] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:46,522] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:47,036] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:47,663] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:48,171] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:48,617] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:49,138] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 20:04:49,567] - camera.py [Line:223] - [INFO]-[thread:123145542881280]-[process:6693] - 当前进程:6693.遇到了人 +[2021-01-17 21:15:25,551] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:25,928] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:26,293] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:26,672] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:27,050] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:27,559] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:27,964] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:28,347] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:28,733] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:29,161] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:29,612] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:30,097] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:30,554] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:31,012] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:31,440] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:31,896] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:32,325] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:32,838] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:33,427] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:33,910] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:34,390] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:34,813] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:35,218] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:35,658] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:36,145] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:36,582] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:37,020] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:37,432] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:37,825] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:38,203] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:38,583] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:38,969] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:39,371] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:39,754] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:40,139] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:40,514] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:40,895] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:41,272] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:41,666] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:42,050] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:42,424] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:42,803] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:43,182] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:43,558] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:43,941] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:44,329] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:44,713] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:45,101] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:45,488] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:45,959] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:46,473] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:46,940] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:47,516] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:47,992] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:48,447] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:48,853] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:49,256] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:49,660] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:50,044] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:50,425] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:50,799] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:51,174] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:51,553] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:51,931] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:52,308] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:52,688] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:53,074] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:53,448] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:53,825] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:54,209] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:54,607] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:54,998] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:55,421] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:55,851] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:56,249] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:15:57,080] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:06,353] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:06,817] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:07,288] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:07,708] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:08,123] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:08,540] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:08,974] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:09,377] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:09,808] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:10,205] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:10,588] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:10,975] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:11,357] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:11,821] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:12,236] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:12,633] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:13,011] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:13,400] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:13,783] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:14,176] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:14,567] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:14,957] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:15,342] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:15,748] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:16,128] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:16,516] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:16,922] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:17,306] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:17,688] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:18,080] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:18,463] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:18,848] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:19,234] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:19,615] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:19,995] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:20,391] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:20,798] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:21,183] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:21,602] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:22,052] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:22,501] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:22,931] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:23,353] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:23,799] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:24,258] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:24,710] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:25,252] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:25,785] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:26,246] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:26,648] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:27,094] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:27,528] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:27,964] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:28,366] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:28,804] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:29,264] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:29,774] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:30,297] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:30,779] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:31,193] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:31,631] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:32,056] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:32,476] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:32,956] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:33,413] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:33,806] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:34,202] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:34,643] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:35,107] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:35,574] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:36,011] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:36,389] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:36,822] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:37,221] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:37,615] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:38,103] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:38,535] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:38,999] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:39,582] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:39,993] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:40,433] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:41,018] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:41,526] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:41,939] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:42,377] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:42,874] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:43,338] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:43,741] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:44,364] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:44,832] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:45,372] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:45,881] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:46,440] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:46,866] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:47,311] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:47,820] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:48,317] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:48,768] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:49,319] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:49,776] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:50,327] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:50,792] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:51,364] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:52,089] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:52,710] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:53,211] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:53,729] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:54,259] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:54,775] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:55,279] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:55,785] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:56,283] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:56,805] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:57,382] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:57,947] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:58,472] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:59,053] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:16:59,870] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:17:00,464] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:17:01,056] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:17:01,785] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:17:02,343] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:17:02,873] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:17:03,397] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:17:03,855] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:17:04,385] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:17:04,887] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:17:05,477] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-17 21:17:05,975] - camera.py [Line:223] - [INFO]-[thread:123145449988096]-[process:6860] - 当前进程:6860.遇到了人 +[2021-01-18 14:11:43,718] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:44,191] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:44,602] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:44,975] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:45,370] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:45,759] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:46,133] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:46,500] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:46,901] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:47,280] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:47,663] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:48,061] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:48,838] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:49,337] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:49,929] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:50,364] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:50,777] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:51,214] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:51,706] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:52,239] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:53,069] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:53,634] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:54,052] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:54,453] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:54,941] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:55,340] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:55,796] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:56,439] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:56,923] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:57,780] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:58,203] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:58,594] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:58,982] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:59,364] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:11:59,879] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:12:00,396] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:12:00,883] - camera.py [Line:223] - [INFO]-[thread:123145548812288]-[process:7497] - 当前进程:7497.遇到了人 +[2021-01-18 14:12:31,204] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:31,621] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:32,093] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:32,538] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:32,941] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:33,338] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:33,714] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:34,154] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:34,657] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:35,073] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:35,511] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:35,937] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:36,328] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:36,784] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:37,243] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:37,635] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:38,058] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:38,527] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:38,992] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:39,423] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:39,838] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:40,267] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:40,712] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:41,103] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:41,512] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:41,937] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:42,367] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:42,766] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:43,167] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:43,613] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:44,071] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:44,479] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:44,925] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:45,345] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:45,750] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:46,143] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:46,556] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:46,956] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:47,346] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:47,766] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:48,226] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:48,649] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:49,138] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:49,561] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:50,081] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:50,567] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:51,010] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:51,430] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:51,907] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:52,336] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:52,853] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:53,318] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:53,746] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:54,195] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:54,797] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:55,282] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:55,715] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:56,108] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:56,502] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:57,001] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:57,518] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:57,940] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:58,419] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:58,946] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:59,419] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:12:59,866] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:00,555] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:00,987] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:01,373] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:01,756] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:02,144] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:02,597] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:03,075] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:03,569] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:04,143] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:04,533] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:04,916] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:05,304] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:05,690] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:06,082] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:06,476] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:06,969] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:07,406] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:07,824] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:08,227] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:08,624] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:09,031] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:09,449] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:09,893] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:10,354] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:10,905] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:11,332] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:11,867] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:12,331] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:12,741] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:13,137] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:13,526] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:13,915] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:14,299] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:14,690] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:15,087] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:15,478] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:15,872] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:16,271] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:16,665] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:17,060] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:17,443] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:17,832] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:18,232] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:18,625] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:19,049] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:19,525] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:20,003] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:20,464] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:20,968] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:21,417] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:21,862] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:22,272] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:22,663] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:23,101] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:23,489] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:23,872] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:24,255] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:24,640] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:25,027] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:25,415] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:25,805] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:26,244] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:26,635] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:27,027] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:27,414] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:27,804] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:28,196] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:28,585] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:28,980] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:29,371] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:29,759] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:30,143] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:30,524] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:30,915] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:31,309] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:31,706] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:32,098] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:32,513] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:32,911] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:33,299] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:33,691] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:34,089] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:34,471] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:34,865] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:35,255] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:35,667] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:36,088] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:36,512] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:36,930] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:37,335] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:37,736] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:38,129] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:38,520] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:38,915] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:39,309] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 14:13:39,745] - camera.py [Line:223] - [INFO]-[thread:123145464201216]-[process:7509] - 当前进程:7509.遇到了人 +[2021-01-18 19:39:26,380] - camera.py [Line:226] - [INFO]-[thread:123145533906944]-[process:8059] - 当前进程:8059.遇到了人 +[2021-01-18 19:39:26,783] - camera.py [Line:226] - [INFO]-[thread:123145533906944]-[process:8059] - 当前进程:8059.遇到了人 +[2021-01-18 19:39:27,171] - camera.py [Line:226] - [INFO]-[thread:123145533906944]-[process:8059] - 当前进程:8059.遇到了人 +[2021-01-18 19:42:40,506] - camera.py [Line:226] - [INFO]-[thread:123145502015488]-[process:8083] - 当前进程:8083.遇到了人 +[2021-01-18 19:42:40,914] - camera.py [Line:226] - [INFO]-[thread:123145502015488]-[process:8083] - 当前进程:8083.遇到了人 +[2021-01-18 19:42:41,322] - camera.py [Line:226] - [INFO]-[thread:123145502015488]-[process:8083] - 当前进程:8083.遇到了人 +[2021-01-18 19:45:15,957] - camera.py [Line:226] - [INFO]-[thread:123145434574848]-[process:8096] - 当前进程:8096.遇到了人 +[2021-01-18 19:45:16,451] - camera.py [Line:226] - [INFO]-[thread:123145434574848]-[process:8096] - 当前进程:8096.遇到了人 +[2021-01-18 19:45:16,865] - camera.py [Line:226] - [INFO]-[thread:123145434574848]-[process:8096] - 当前进程:8096.遇到了人 +[2021-01-18 19:48:42,760] - camera.py [Line:226] - [INFO]-[thread:123145323077632]-[process:8109] - 当前进程:8109.遇到了人 +[2021-01-18 19:48:43,179] - camera.py [Line:226] - [INFO]-[thread:123145323077632]-[process:8109] - 当前进程:8109.遇到了人 +[2021-01-18 19:48:43,584] - camera.py [Line:226] - [INFO]-[thread:123145323077632]-[process:8109] - 当前进程:8109.遇到了人 +[2021-01-18 19:51:24,788] - camera.py [Line:226] - [INFO]-[thread:123145469210624]-[process:8123] - 当前进程:8123.遇到了人 +[2021-01-18 19:51:25,182] - camera.py [Line:226] - [INFO]-[thread:123145469210624]-[process:8123] - 当前进程:8123.遇到了人 +[2021-01-18 19:51:25,587] - camera.py [Line:226] - [INFO]-[thread:123145469210624]-[process:8123] - 当前进程:8123.遇到了人 +[2021-01-18 19:52:58,090] - camera.py [Line:226] - [INFO]-[thread:123145470316544]-[process:8130] - 当前进程:8130.遇到了人 +[2021-01-18 19:52:58,530] - camera.py [Line:226] - [INFO]-[thread:123145470316544]-[process:8130] - 当前进程:8130.遇到了人 +[2021-01-18 19:52:58,920] - camera.py [Line:226] - [INFO]-[thread:123145470316544]-[process:8130] - 当前进程:8130.遇到了人 +[2021-01-18 19:55:21,791] - camera.py [Line:226] - [INFO]-[thread:123145573470208]-[process:8146] - 当前进程:8146.遇到了人 +[2021-01-18 20:04:36,872] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:37,281] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:37,684] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:38,068] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:38,450] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:38,820] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:39,260] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:39,643] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:40,048] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:40,425] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:40,811] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:41,191] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:41,570] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:41,949] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:42,335] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:42,710] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:43,093] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:43,466] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:43,850] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:44,229] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:44,612] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:44,995] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:45,371] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:45,755] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:46,130] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:46,517] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:46,906] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:47,293] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:47,688] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:48,074] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:48,452] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:48,837] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:49,224] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:49,616] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:50,030] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:50,433] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:50,837] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:51,230] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:51,618] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:52,007] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:52,398] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:52,790] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:53,200] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:53,584] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:53,984] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:54,398] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:54,785] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:55,168] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:55,557] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:55,942] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:56,324] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:56,701] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:57,089] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:57,467] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:57,858] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:58,280] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:58,659] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:59,037] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:59,411] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:04:59,786] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:00,171] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:00,549] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:00,931] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:01,312] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:01,694] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:02,064] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:02,448] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:02,835] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:03,217] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:03,601] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:03,981] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:04,359] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:04,732] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:05,116] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:05,504] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:05,885] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:06,263] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:06,642] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:07,014] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:07,397] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:07,780] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:08,161] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:08,545] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:08,924] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:09,310] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:09,695] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:10,074] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:10,459] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:10,849] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:11,226] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:11,603] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:11,983] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:12,364] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:12,740] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:13,122] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:13,505] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:13,888] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:14,286] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:14,661] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:15,039] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:15,423] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:15,803] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:16,190] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:16,575] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:16,961] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:17,357] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:17,749] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:18,173] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:18,583] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:19,343] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:19,752] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:20,138] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:20,523] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:20,909] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:21,288] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:21,664] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:22,050] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:22,440] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:22,828] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:22,829] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:23,298] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:23,678] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:24,108] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:24,491] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:24,873] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:25,256] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:25,638] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:26,044] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:26,447] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:26,855] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:27,279] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:27,762] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:28,192] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:28,586] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:29,004] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:29,391] - camera.py [Line:226] - [INFO]-[thread:123145461518336]-[process:8195] - 当前进程:8195.遇到了人 +[2021-01-18 20:05:51,992] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:05:52,394] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:05:52,787] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:05:53,201] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:05:53,590] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:05:53,972] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:05:54,342] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:05:54,714] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:05:55,116] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:05:55,566] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:05:55,942] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:05:56,321] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:05:56,701] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:05:57,075] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:05:57,455] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:05:57,836] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:05:58,220] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:05:58,599] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:05:59,012] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:05:59,421] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:05:59,874] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:06:00,321] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:06:00,741] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:06:01,154] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:06:01,589] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:06:01,987] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:06:02,385] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:06:02,788] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:06:03,258] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:06:03,660] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:06:04,104] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:06:05,016] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:06:05,522] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:06:05,940] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:06:06,456] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:06:07,006] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:06:07,460] - camera.py [Line:226] - [INFO]-[thread:123145485807616]-[process:8202] - 当前进程:8202.遇到了人 +[2021-01-18 20:06:13,424] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:13,835] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:14,231] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:14,615] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:14,989] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:15,369] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:15,745] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:16,117] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:16,496] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:16,882] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:17,265] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:17,646] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:18,038] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:18,406] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:18,790] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:19,166] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:19,541] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:19,919] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:20,294] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:20,673] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:21,061] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:21,449] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:21,851] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:22,236] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:22,612] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:23,014] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:23,422] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:23,795] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:24,196] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:24,578] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:24,961] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:25,341] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:25,712] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:26,089] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:26,513] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:26,900] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:27,276] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:27,656] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:28,032] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:28,408] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:28,782] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:29,167] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:29,546] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:29,927] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:30,314] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:30,685] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:31,067] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:31,443] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:31,821] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:32,204] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:32,580] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:32,962] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:33,354] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:33,736] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:34,115] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:34,488] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:34,867] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:35,241] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:35,617] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:35,994] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:36,373] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:36,791] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:37,192] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:37,581] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:37,957] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:38,339] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:38,709] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:39,096] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:39,476] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:39,851] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:40,277] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:40,685] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:41,115] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:41,494] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:41,870] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:42,277] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:42,667] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:43,045] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:43,423] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:43,802] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:44,184] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:44,568] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:44,944] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:45,323] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:45,709] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:46,100] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:46,539] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:46,976] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:47,417] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:47,817] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:06:48,199] - camera.py [Line:226] - [INFO]-[thread:123145415163904]-[process:8209] - 当前进程:8209.遇到了人 +[2021-01-18 20:42:02,606] - camera.py [Line:226] - [INFO]-[thread:123145551921152]-[process:8304] - 当前进程:8304.遇到了人 +[2021-01-18 20:45:29,010] - camera.py [Line:226] - [INFO]-[thread:123145572212736]-[process:8327] - 当前进程:8327.遇到了人 +[2021-01-18 20:45:29,457] - camera.py [Line:226] - [INFO]-[thread:123145572212736]-[process:8327] - 当前进程:8327.遇到了人 +[2021-01-18 20:45:29,856] - camera.py [Line:226] - [INFO]-[thread:123145572212736]-[process:8327] - 当前进程:8327.遇到了人 +[2021-01-18 20:45:30,240] - camera.py [Line:226] - [INFO]-[thread:123145572212736]-[process:8327] - 当前进程:8327.遇到了人 +[2021-01-18 20:45:30,638] - camera.py [Line:226] - [INFO]-[thread:123145572212736]-[process:8327] - 当前进程:8327.遇到了人 +[2021-01-18 20:45:31,124] - camera.py [Line:226] - [INFO]-[thread:123145572212736]-[process:8327] - 当前进程:8327.遇到了人 +[2021-01-18 20:45:31,524] - camera.py [Line:226] - [INFO]-[thread:123145572212736]-[process:8327] - 当前进程:8327.遇到了人 +[2021-01-18 20:45:31,911] - camera.py [Line:226] - [INFO]-[thread:123145572212736]-[process:8327] - 当前进程:8327.遇到了人 +[2021-01-18 20:45:32,289] - camera.py [Line:226] - [INFO]-[thread:123145572212736]-[process:8327] - 当前进程:8327.遇到了人 +[2021-01-18 20:45:32,687] - camera.py [Line:226] - [INFO]-[thread:123145572212736]-[process:8327] - 当前进程:8327.遇到了人 +[2021-01-18 20:45:33,071] - camera.py [Line:226] - [INFO]-[thread:123145572212736]-[process:8327] - 当前进程:8327.遇到了人 +[2021-01-18 20:45:33,452] - camera.py [Line:226] - [INFO]-[thread:123145572212736]-[process:8327] - 当前进程:8327.遇到了人 +[2021-01-18 20:45:33,840] - camera.py [Line:226] - [INFO]-[thread:123145572212736]-[process:8327] - 当前进程:8327.遇到了人 +[2021-01-18 20:45:34,293] - camera.py [Line:226] - [INFO]-[thread:123145572212736]-[process:8327] - 当前进程:8327.遇到了人 +[2021-01-18 20:45:34,730] - camera.py [Line:226] - [INFO]-[thread:123145572212736]-[process:8327] - 当前进程:8327.遇到了人 +[2021-01-18 20:45:35,146] - camera.py [Line:226] - [INFO]-[thread:123145572212736]-[process:8327] - 当前进程:8327.遇到了人 +[2021-01-19 13:15:12,617] - camera.py [Line:226] - [INFO]-[thread:123145316679680]-[process:1234] - 当前进程:1234.遇到了人 +[2021-01-19 13:15:13,738] - camera.py [Line:226] - [INFO]-[thread:123145316679680]-[process:1234] - 当前进程:1234.遇到了人 +[2021-01-19 13:15:14,864] - camera.py [Line:226] - [INFO]-[thread:123145316679680]-[process:1234] - 当前进程:1234.遇到了人 +[2021-01-19 13:15:15,824] - camera.py [Line:226] - [INFO]-[thread:123145316679680]-[process:1234] - 当前进程:1234.遇到了人 +[2021-01-19 13:15:16,846] - camera.py [Line:226] - [INFO]-[thread:123145316679680]-[process:1234] - 当前进程:1234.遇到了人 +[2021-01-19 13:15:18,056] - camera.py [Line:226] - [INFO]-[thread:123145316679680]-[process:1234] - 当前进程:1234.遇到了人 +[2021-01-19 13:15:19,327] - camera.py [Line:226] - [INFO]-[thread:123145316679680]-[process:1234] - 当前进程:1234.遇到了人 +[2021-01-19 13:15:20,200] - camera.py [Line:226] - [INFO]-[thread:123145316679680]-[process:1234] - 当前进程:1234.遇到了人 +[2021-01-19 13:15:20,995] - camera.py [Line:226] - [INFO]-[thread:123145316679680]-[process:1234] - 当前进程:1234.遇到了人 +[2021-01-19 13:15:21,681] - camera.py [Line:226] - [INFO]-[thread:123145316679680]-[process:1234] - 当前进程:1234.遇到了人 +[2021-01-19 13:15:22,265] - camera.py [Line:226] - [INFO]-[thread:123145316679680]-[process:1234] - 当前进程:1234.遇到了人 +[2021-01-19 13:15:22,785] - camera.py [Line:226] - [INFO]-[thread:123145316679680]-[process:1234] - 当前进程:1234.遇到了人 +[2021-01-19 13:15:23,206] - camera.py [Line:226] - [INFO]-[thread:123145316679680]-[process:1234] - 当前进程:1234.遇到了人 +[2021-01-19 13:15:23,698] - camera.py [Line:226] - [INFO]-[thread:123145316679680]-[process:1234] - 当前进程:1234.遇到了人 +[2021-01-19 13:15:24,085] - camera.py [Line:226] - [INFO]-[thread:123145316679680]-[process:1234] - 当前进程:1234.遇到了人 +[2021-01-19 13:17:55,698] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,699] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,699] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,699] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,699] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,699] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,699] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,700] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,700] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,700] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,700] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,700] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,700] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,701] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,701] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,701] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,701] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,701] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,702] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,702] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,702] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,702] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,702] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,702] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,703] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:17:55,703] - camera_test.py [Line:226] - [INFO]-[thread:123145433382912]-[process:1266] - 当前进程:1266.遇到了人 +[2021-01-19 13:21:24,341] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,341] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,341] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,341] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,341] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,342] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,342] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,342] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,342] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,342] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,342] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,342] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,343] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,343] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,343] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,343] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,343] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,343] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,344] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,344] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,344] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,344] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,344] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,345] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,345] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:21:24,345] - camera_test.py [Line:226] - [INFO]-[thread:123145518112768]-[process:1285] - 当前进程:1285.遇到了人 +[2021-01-19 13:45:47,078] - camera_test.py [Line:226] - [INFO]-[thread:123145491705856]-[process:1344] - 当前进程:1344.遇到了人 +[2021-01-19 13:45:47,100] - camera_test.py [Line:226] - [INFO]-[thread:123145491705856]-[process:1344] - 当前进程:1344.遇到了人 +[2021-01-19 13:45:47,100] - camera_test.py [Line:226] - [INFO]-[thread:123145491705856]-[process:1344] - 当前进程:1344.遇到了人 +[2021-01-19 13:45:47,101] - camera_test.py [Line:226] - [INFO]-[thread:123145491705856]-[process:1344] - 当前进程:1344.遇到了人 +[2021-01-19 13:45:47,101] - camera_test.py [Line:226] - [INFO]-[thread:123145491705856]-[process:1344] - 当前进程:1344.遇到了人 +[2021-01-19 13:45:47,101] - camera_test.py [Line:226] - [INFO]-[thread:123145491705856]-[process:1344] - 当前进程:1344.遇到了人 +[2021-01-19 13:45:47,103] - camera_test.py [Line:226] - [INFO]-[thread:123145491705856]-[process:1344] - 当前进程:1344.遇到了人 +[2021-01-19 13:45:47,103] - camera_test.py [Line:226] - [INFO]-[thread:123145491705856]-[process:1344] - 当前进程:1344.遇到了人 +[2021-01-19 13:45:47,104] - camera_test.py [Line:226] - [INFO]-[thread:123145491705856]-[process:1344] - 当前进程:1344.遇到了人 +[2021-01-19 13:45:47,104] - camera_test.py [Line:226] - [INFO]-[thread:123145491705856]-[process:1344] - 当前进程:1344.遇到了人 +[2021-01-19 13:45:47,105] - camera_test.py [Line:226] - [INFO]-[thread:123145491705856]-[process:1344] - 当前进程:1344.遇到了人 +[2021-01-19 13:45:47,105] - camera_test.py [Line:226] - [INFO]-[thread:123145491705856]-[process:1344] - 当前进程:1344.遇到了人 +[2021-01-19 13:45:47,105] - camera_test.py [Line:226] - [INFO]-[thread:123145491705856]-[process:1344] - 当前进程:1344.遇到了人 +[2021-01-19 13:45:47,105] - camera_test.py [Line:226] - [INFO]-[thread:123145491705856]-[process:1344] - 当前进程:1344.遇到了人 +[2021-01-19 13:45:47,105] - camera_test.py [Line:226] - [INFO]-[thread:123145491705856]-[process:1344] - 当前进程:1344.遇到了人 +[2021-01-19 13:45:47,105] - camera_test.py [Line:226] - [INFO]-[thread:123145491705856]-[process:1344] - 当前进程:1344.遇到了人 +[2021-01-19 13:49:02,870] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,870] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,870] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,870] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,871] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,871] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,871] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,871] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,871] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,872] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,872] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,872] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,873] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,873] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,873] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,873] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,873] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,874] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,874] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,874] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,874] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,874] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,875] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,875] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,875] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:49:02,875] - camera_test.py [Line:226] - [INFO]-[thread:123145488670720]-[process:1384] - 当前进程:1384.遇到了人 +[2021-01-19 13:52:26,581] - camera_test.py [Line:226] - [INFO]-[thread:123145325998080]-[process:1427] - 当前进程:1427.遇到了人 +[2021-01-19 13:52:26,582] - camera_test.py [Line:226] - [INFO]-[thread:123145325998080]-[process:1427] - 当前进程:1427.遇到了人 +[2021-01-19 13:52:26,582] - camera_test.py [Line:226] - [INFO]-[thread:123145325998080]-[process:1427] - 当前进程:1427.遇到了人 +[2021-01-19 13:52:26,582] - camera_test.py [Line:226] - [INFO]-[thread:123145325998080]-[process:1427] - 当前进程:1427.遇到了人 +[2021-01-19 13:52:26,582] - camera_test.py [Line:226] - [INFO]-[thread:123145325998080]-[process:1427] - 当前进程:1427.遇到了人 +[2021-01-19 13:52:26,582] - camera_test.py [Line:226] - [INFO]-[thread:123145325998080]-[process:1427] - 当前进程:1427.遇到了人 +[2021-01-19 13:52:26,583] - camera_test.py [Line:226] - [INFO]-[thread:123145325998080]-[process:1427] - 当前进程:1427.遇到了人 +[2021-01-19 13:52:26,583] - camera_test.py [Line:226] - [INFO]-[thread:123145325998080]-[process:1427] - 当前进程:1427.遇到了人 +[2021-01-19 13:52:26,583] - camera_test.py [Line:226] - [INFO]-[thread:123145325998080]-[process:1427] - 当前进程:1427.遇到了人 +[2021-01-19 13:52:26,583] - camera_test.py [Line:226] - [INFO]-[thread:123145325998080]-[process:1427] - 当前进程:1427.遇到了人 +[2021-01-19 13:52:26,583] - camera_test.py [Line:226] - [INFO]-[thread:123145325998080]-[process:1427] - 当前进程:1427.遇到了人 +[2021-01-19 13:52:26,583] - camera_test.py [Line:226] - [INFO]-[thread:123145325998080]-[process:1427] - 当前进程:1427.遇到了人 +[2021-01-19 13:52:26,584] - camera_test.py [Line:226] - [INFO]-[thread:123145325998080]-[process:1427] - 当前进程:1427.遇到了人 +[2021-01-19 13:52:26,584] - camera_test.py [Line:226] - [INFO]-[thread:123145325998080]-[process:1427] - 当前进程:1427.遇到了人 +[2021-01-19 13:52:26,584] - camera_test.py [Line:226] - [INFO]-[thread:123145325998080]-[process:1427] - 当前进程:1427.遇到了人 +[2021-01-19 13:52:26,584] - camera_test.py [Line:226] - [INFO]-[thread:123145325998080]-[process:1427] - 当前进程:1427.遇到了人 +[2021-01-19 13:56:31,586] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:31,589] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:31,590] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:31,591] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:31,592] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:31,594] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:31,598] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:31,605] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:31,612] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:31,626] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:31,652] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:31,674] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:31,697] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:31,755] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:31,796] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:31,836] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,286] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,286] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,287] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,288] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,289] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,291] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,293] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,299] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,306] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,316] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,330] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,344] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,361] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,378] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,397] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,421] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,768] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,768] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,769] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,769] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,770] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,771] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,774] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,777] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,782] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,789] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,797] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,807] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,820] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,834] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:32,851] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,197] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,198] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,198] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,199] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,200] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,201] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,203] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,206] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,211] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,218] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,226] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,235] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,247] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,262] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,277] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,683] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,683] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,684] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,685] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,686] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,687] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,689] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,692] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,697] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,705] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,714] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,727] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,739] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,768] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:33,785] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,153] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,154] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,155] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,155] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,157] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,159] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,162] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,166] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,173] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,182] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,192] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,205] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,218] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,235] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,598] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,599] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,599] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,600] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,601] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,603] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,607] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,611] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,618] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,628] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,639] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,650] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,662] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:34,999] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,000] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,001] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,001] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,003] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,004] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,007] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,011] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,016] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,024] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,033] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,041] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,053] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,067] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,083] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,433] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,433] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,434] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,435] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,436] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,437] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,439] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,442] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,446] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,452] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,460] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,467] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,478] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,491] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,507] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,526] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,546] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,909] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,910] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,910] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,910] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,912] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,914] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,916] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,919] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,925] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,932] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,939] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,949] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,960] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,973] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:35,988] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,006] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,027] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,051] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,079] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,440] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,441] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,441] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,442] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,442] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,443] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,445] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,449] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,453] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,460] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,471] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,483] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,496] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,516] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,537] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,559] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,582] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,606] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,633] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,985] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,986] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,986] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,987] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,988] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,990] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,993] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:36,997] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,004] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,011] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,021] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,032] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,047] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,064] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,082] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,105] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,470] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,471] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,471] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,472] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,473] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,475] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,478] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,483] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,488] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,496] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,505] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,515] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,527] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,541] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,558] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,577] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,598] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,945] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,945] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,946] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,946] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,947] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,949] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,952] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,955] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,960] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,966] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,975] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:37,986] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,000] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,016] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,033] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,052] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,402] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,402] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,403] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,403] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,404] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,405] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,408] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,412] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,417] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,423] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,432] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,443] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,455] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,470] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,488] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,830] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,831] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,831] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,832] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,833] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,835] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,837] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,840] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,845] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,851] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,861] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,869] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,882] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,897] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,914] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,932] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:38,954] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,314] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,315] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,316] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,316] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,317] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,318] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,320] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,322] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,326] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,335] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,351] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,377] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,398] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,479] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,507] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,533] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,572] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,599] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,989] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,989] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,990] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,990] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,991] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,992] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,994] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:39,996] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,001] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,008] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,016] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,026] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,037] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,050] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,065] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,082] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,102] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,433] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,433] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,434] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,434] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,435] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,436] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,439] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,443] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,449] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,455] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,463] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,473] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,487] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,501] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,516] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,533] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,552] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,886] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,887] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,887] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,887] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,888] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,889] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,892] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,896] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,901] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,908] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,916] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,926] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,940] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,954] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,970] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:40,985] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,004] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,345] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,345] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,345] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,346] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,346] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,347] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,349] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,351] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,354] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,361] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,367] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,377] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,386] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,398] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,410] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,425] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,443] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,463] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,794] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,795] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,795] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,795] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,796] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,798] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,800] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,803] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,807] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,813] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,819] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,829] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,839] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,851] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,866] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,880] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,899] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:41,920] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,252] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,253] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,253] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,254] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,254] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,255] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,258] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,261] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,266] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,271] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,276] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,283] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,300] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,313] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,325] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,341] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,358] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,380] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,402] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,738] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,739] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,739] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,739] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,740] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,742] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,744] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,747] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,752] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,757] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,763] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,770] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,780] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,792] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,806] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,822] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:42,839] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,175] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,175] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,176] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,176] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,177] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,178] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,179] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,182] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,185] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,190] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,196] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,204] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,214] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,224] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,242] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,257] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,276] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,296] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,660] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,660] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,661] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,661] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,662] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,663] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,670] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,673] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,679] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,683] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,689] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,698] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,707] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,718] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,731] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,746] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,764] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:43,786] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,138] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,141] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,141] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,143] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,143] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,144] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,146] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,149] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,152] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,156] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,163] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,170] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,178] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,191] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,206] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,225] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,245] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,270] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,295] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,637] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,638] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,638] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,639] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,640] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,642] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,645] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,648] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,653] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,660] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,674] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,684] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,694] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,707] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,721] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,740] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,759] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,784] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:44,811] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,199] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,199] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,200] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,200] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,201] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,203] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,205] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,209] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,215] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,223] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,231] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,242] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,255] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,271] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,288] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,308] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,327] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,705] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,706] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,707] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,708] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,709] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,711] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,712] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,715] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,718] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,723] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,731] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,739] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,750] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,763] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,778] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,796] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,816] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:45,837] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,171] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,172] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,172] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,173] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,174] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,175] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,177] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,180] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,183] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,189] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,195] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,203] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,211] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,221] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,235] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,251] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,268] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,286] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,308] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,702] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,702] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,703] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,703] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,704] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,705] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,708] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,712] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,718] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,724] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,730] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,739] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,750] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,764] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,779] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:46,795] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,146] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,147] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,147] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,147] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,148] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,150] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,152] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,155] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,160] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,166] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,174] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,183] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,194] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,207] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,228] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,248] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,622] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,623] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,623] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,624] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,625] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,626] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,629] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,632] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,636] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,642] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,650] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,659] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,669] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,683] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,700] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,721] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:47,739] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,116] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,116] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,117] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,118] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,119] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,121] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,125] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,129] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,134] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,142] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,149] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,160] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,171] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,185] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,200] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,217] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,585] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,585] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,585] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,586] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,587] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,588] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,590] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,593] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,598] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,604] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,612] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,622] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,631] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,644] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,658] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,995] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,996] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,996] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,997] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:48,998] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,000] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,002] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,005] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,008] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,014] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,020] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,029] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,043] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,056] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,070] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,084] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,436] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,441] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,442] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,442] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,444] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,445] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,448] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,450] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,455] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,460] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,467] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,475] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,484] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,495] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,506] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,520] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,536] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,895] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,896] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,896] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,897] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,899] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,902] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,904] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,909] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,914] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,920] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,929] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,938] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,951] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,964] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:49,979] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,322] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,322] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,323] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,324] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,325] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,327] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,329] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,332] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,336] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,341] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,348] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,357] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,366] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,377] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,723] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,723] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,724] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,724] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,726] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,727] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,730] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,733] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,737] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,742] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,750] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,761] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,771] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,781] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:50,795] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,148] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,148] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,149] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,149] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,150] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,151] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,153] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,156] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,160] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,166] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,173] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,181] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,190] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,202] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,548] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,549] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,549] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,550] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,551] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,553] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,559] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,563] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,568] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,574] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,579] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,588] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,597] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,608] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,959] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,960] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,961] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,961] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,962] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,963] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,966] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,969] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,973] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,978] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,985] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:51,992] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,001] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,012] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,031] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,386] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,386] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,387] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,387] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,388] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,389] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,392] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,394] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,397] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,402] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,409] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,416] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,427] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,439] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,769] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,770] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,770] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,770] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,771] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,772] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,774] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,777] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,780] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,784] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,790] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,797] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,806] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,816] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:52,829] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,155] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,155] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,156] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,157] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,158] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,159] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,162] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,164] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,168] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,176] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,186] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,193] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,204] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,213] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,226] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,594] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,595] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,595] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,596] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,597] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,599] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,600] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,603] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,605] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,610] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,616] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,623] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,634] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,646] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,661] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:53,677] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,023] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,024] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,024] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,025] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,025] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,026] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,028] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,031] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,036] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,041] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,047] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,054] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,062] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,073] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,085] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,435] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,436] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,436] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,437] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,438] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,439] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,441] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,444] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,448] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,453] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,461] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,469] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,479] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,490] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,873] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,874] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,874] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,875] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,876] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,878] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,881] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,885] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,890] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,894] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,902] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,912] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,923] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:54,936] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,281] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,282] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,282] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,283] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,284] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,285] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,286] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,288] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,290] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,294] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,298] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,304] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,316] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,328] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,338] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,687] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,687] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,688] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,689] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,690] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,691] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,694] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,697] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,701] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,706] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,714] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,720] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,727] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,737] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,748] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,761] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:55,776] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,124] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,125] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,126] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,126] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,127] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,129] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,131] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,133] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,136] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,142] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,148] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,154] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,167] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,176] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,520] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,520] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,521] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,521] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,522] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,523] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,525] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,527] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,530] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,533] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,537] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,544] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,552] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,562] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,572] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,584] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,920] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,920] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,921] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,922] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,923] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,924] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,926] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,929] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,932] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,935] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,940] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,948] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,956] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,968] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,981] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:56,996] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,340] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,341] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,342] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,342] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,343] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,344] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,347] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,348] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,351] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,357] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,361] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,368] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,377] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,387] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,401] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,415] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,771] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,772] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,772] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,773] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,774] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,775] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,777] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,780] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,785] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,790] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,798] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,804] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,814] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,827] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,843] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:57,861] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,234] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,235] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,235] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,236] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,238] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,239] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,242] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,245] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,259] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,265] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,279] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,296] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,308] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,323] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,338] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,354] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,801] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,802] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,802] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,803] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,804] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,806] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,809] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,813] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,818] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,824] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,832] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,843] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,854] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,870] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,885] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:58,902] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,251] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,252] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,252] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,253] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,253] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,254] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,257] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,260] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,264] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,268] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,274] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,280] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,288] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,297] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,629] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,629] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,630] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,631] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,631] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,633] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,634] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,636] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,640] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,643] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,649] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,658] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:56:59,666] - camera_test.py [Line:225] - [INFO]-[thread:123145408655360]-[process:1460] - 当前进程:1460.遇到了人 +[2021-01-19 13:59:28,041] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,041] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,042] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,042] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,043] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,044] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,044] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,044] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,045] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,045] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,045] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,046] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,046] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,046] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,047] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,047] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,420] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,420] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,421] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,421] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,422] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,422] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,422] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,423] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,423] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,423] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,424] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,424] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,424] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,425] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,425] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,426] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,749] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,749] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,750] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,750] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,750] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,751] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,751] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,751] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,752] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,752] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,752] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,753] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,753] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,753] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:28,754] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,078] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,079] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,079] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,079] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,080] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,080] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,081] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,081] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,081] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,082] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,082] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,082] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,083] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,083] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,083] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,405] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,405] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,406] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,406] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,406] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,407] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,407] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,407] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,408] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,408] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,408] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,408] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,409] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,409] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,409] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,715] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,716] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,716] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,717] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,717] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,717] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,718] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,718] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,718] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,719] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,719] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,719] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,720] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:29,720] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,019] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,019] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,020] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,020] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,020] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,021] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,021] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,022] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,022] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,022] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,023] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,023] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,024] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,415] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,416] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,416] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,417] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,417] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,417] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,418] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,418] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,419] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,419] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,419] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,420] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,420] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,421] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,421] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,747] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,748] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,748] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,748] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,749] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,750] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,750] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,750] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,751] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,751] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,752] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,752] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,752] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,753] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,753] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,754] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:30,754] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,084] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,084] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,084] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,085] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,086] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,086] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,086] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,087] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,087] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,088] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,088] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,088] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,089] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,089] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,089] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,090] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,090] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,091] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,091] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,413] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,414] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,414] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,415] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,415] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,415] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,416] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,416] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,416] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,417] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,417] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,418] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,418] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,418] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,419] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,419] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,419] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,420] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,420] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,731] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,731] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,732] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,732] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,733] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,733] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,733] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,734] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,734] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,734] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,735] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,735] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,735] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,736] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,736] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:31,737] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,037] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,037] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,038] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,038] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,039] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,039] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,039] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,039] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,040] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,040] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,040] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,041] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,041] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,041] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,042] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,042] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,042] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,348] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,349] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,349] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,349] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,350] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,350] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,350] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,351] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,351] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,351] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,352] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,352] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,353] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,353] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,353] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,354] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,666] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,666] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,667] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,667] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,667] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,668] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,668] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,668] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,669] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,669] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,669] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,670] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,670] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,670] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:32,671] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,017] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,017] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,018] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,018] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,018] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,019] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,019] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,020] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,022] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,022] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,023] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,023] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,024] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,024] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,024] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,025] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,026] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,355] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,356] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,356] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,357] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,357] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,358] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,358] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,358] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,359] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,359] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,360] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,360] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,361] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,361] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,362] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,362] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,362] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,363] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,702] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,703] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,703] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,704] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,705] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,705] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,705] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,706] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,706] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,707] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,707] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,708] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,708] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,708] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,709] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,709] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:33,709] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,044] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,045] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,045] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,046] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,046] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,047] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,047] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,048] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,048] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,048] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,049] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,049] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,050] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,050] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,050] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,051] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,051] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,398] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,399] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,399] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,399] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,400] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,400] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,400] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,401] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,401] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,401] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,402] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,402] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,403] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,403] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,403] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,404] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,404] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,714] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,715] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,715] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,715] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,716] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,716] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,716] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,717] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,717] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,717] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,718] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,718] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,718] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,718] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,719] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,719] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,720] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:34,720] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,023] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,024] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,024] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,025] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,025] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,025] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,026] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,026] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,027] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,027] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,027] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,028] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,028] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,028] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,029] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,029] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,029] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,030] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,349] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,349] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,350] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,350] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,350] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,351] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,351] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,352] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,352] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,353] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,353] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,354] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,354] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,354] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,355] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,355] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,355] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,356] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,357] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,819] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,820] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,820] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,821] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,821] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,821] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,822] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,822] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,823] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,823] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,823] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,824] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,824] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,825] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,825] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,825] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:35,826] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,212] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,213] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,214] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,214] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,214] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,215] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,216] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,218] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,219] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,220] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,220] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,221] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,221] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,221] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,222] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,222] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,223] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,224] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,592] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,592] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,593] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,593] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,593] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,594] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,595] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,595] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,596] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,596] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,597] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,597] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,598] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,598] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,599] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,599] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,599] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:36,600] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,030] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,031] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,031] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,032] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,033] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,033] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,034] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,035] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,035] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,036] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,036] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,037] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,037] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,038] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,038] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,039] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,039] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,040] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,040] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,507] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,508] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,508] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,509] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,509] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,509] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,510] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,510] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,510] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,511] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,511] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,511] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,512] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,512] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,512] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,513] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,513] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,513] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,513] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,837] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,838] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,838] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,838] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,839] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,839] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,839] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,840] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,840] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,841] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,842] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,843] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,844] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,844] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,844] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,845] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:37,845] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,151] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,151] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,152] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,152] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,152] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,153] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,153] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,153] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,154] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,154] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,154] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,155] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,155] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,155] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,156] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,156] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,156] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,156] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,458] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,458] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,458] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,459] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,459] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,459] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,460] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,460] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,460] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,461] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,461] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,461] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,462] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,462] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,462] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,463] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,463] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,463] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,464] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,766] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,766] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,767] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,767] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,768] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,768] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,768] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,769] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,769] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,769] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,770] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,770] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,771] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,771] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,771] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:38,772] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,072] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,072] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,072] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,073] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,073] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,074] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,074] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,074] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,075] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,075] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,075] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,075] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,076] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,076] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,076] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,077] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,377] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,378] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,378] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,378] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,379] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,379] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,379] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,380] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,380] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,380] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,381] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,381] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,381] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,381] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,382] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,382] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,382] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,683] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,683] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,684] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,684] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,685] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,685] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,686] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,686] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,686] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,687] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,687] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,687] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,688] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,688] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,689] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,689] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,993] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,994] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,994] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,995] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,995] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,995] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,996] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,996] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,996] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,997] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,997] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,997] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,998] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,998] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:39,998] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,296] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,296] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,297] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,297] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,298] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,298] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,298] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,298] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,299] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,299] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,299] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,300] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,300] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,301] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,301] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,301] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,612] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,613] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,613] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,613] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,614] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,614] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,614] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,615] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,615] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,615] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,616] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,616] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,616] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,617] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,617] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,617] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,618] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,921] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,922] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,922] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,922] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,923] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,923] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,923] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,924] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,924] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,925] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,925] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,925] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,926] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,926] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:40,926] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,233] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,233] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,234] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,234] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,234] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,235] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,235] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,235] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,236] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,236] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,236] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,237] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,237] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,237] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,555] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,555] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,557] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,557] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,558] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,558] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,559] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,559] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,560] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,560] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,560] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,561] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,561] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,562] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,562] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,981] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,982] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,982] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,983] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,983] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,983] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,984] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,984] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,984] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,984] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,985] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,985] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,985] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:41,986] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,307] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,308] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,308] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,309] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,309] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,309] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,310] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,310] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,310] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,311] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,311] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,312] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,312] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,312] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,615] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,616] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,616] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,617] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,617] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,617] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,618] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,618] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,618] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,619] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,619] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,619] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,620] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,620] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,620] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,994] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,996] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,997] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,998] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:42,999] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,000] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,001] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,001] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,002] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,002] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,002] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,003] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,003] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,004] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,348] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,349] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,349] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,350] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,350] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,350] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,351] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,351] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,351] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,351] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,352] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,352] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,352] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,353] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,353] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,662] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,663] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,664] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,665] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,665] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,666] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,666] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,667] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,667] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,668] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,668] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,669] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,669] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,670] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:43,671] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,005] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,008] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,009] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,009] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,010] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,010] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,010] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,011] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,011] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,012] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,012] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,012] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,013] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,013] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,013] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,014] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,334] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,335] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,335] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,336] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,336] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,336] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,337] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,337] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,338] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,338] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,339] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,339] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,339] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,340] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,340] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,694] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,695] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,696] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,696] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,697] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,697] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,697] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,698] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,698] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,699] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,699] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,700] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,700] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:44,701] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,041] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,041] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,042] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,042] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,042] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,043] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,044] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,044] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,044] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,044] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,045] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,045] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,045] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,046] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,353] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,354] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,354] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,355] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,355] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,355] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,356] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,356] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,356] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,357] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,357] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,357] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,358] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,358] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,358] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,672] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,673] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,674] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,674] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,674] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,675] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,675] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,675] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,676] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,676] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,676] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,677] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,677] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,677] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,678] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,678] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 13:59:45,678] - camera_test.py [Line:225] - [INFO]-[thread:123145458483200]-[process:1490] - 当前进程:1490.遇到了人 +[2021-01-19 14:02:17,381] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,382] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,382] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,383] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,384] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,385] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,388] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,392] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,398] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,412] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,425] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,436] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,454] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,470] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,515] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,550] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,938] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,939] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,940] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,940] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,941] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,943] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,946] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,950] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,956] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,963] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,975] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,984] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:17,997] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,012] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,029] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,051] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,410] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,411] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,411] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,411] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,412] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,414] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,416] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,420] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,425] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,432] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,441] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,452] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,465] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,478] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,496] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,827] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,828] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,828] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,829] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,830] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,831] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,834] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,837] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,843] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,849] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,856] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,874] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,886] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,907] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:18,923] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,317] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,317] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,318] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,318] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,319] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,320] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,322] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,326] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,330] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,338] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,348] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,361] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,372] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,387] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,403] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,739] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,740] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,740] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,741] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,742] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,743] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,746] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,749] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,754] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,761] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,770] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,780] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,791] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:19,805] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,159] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,159] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,160] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,160] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,161] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,163] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,166] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,170] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,176] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,188] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,199] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,210] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,222] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,577] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,578] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,578] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,578] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,580] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,582] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,584] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,588] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,594] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,601] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,609] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,618] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,632] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,656] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:20,676] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,011] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,012] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,012] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,013] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,014] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,015] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,018] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,021] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,025] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,031] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,039] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,048] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,061] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,076] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,094] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,114] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,137] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,490] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,491] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,491] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,492] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,493] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,494] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,496] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,500] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,504] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,511] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,518] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,528] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,538] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,550] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,564] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,582] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,603] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,628] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:21,666] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,012] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,012] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,013] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,013] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,014] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,015] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,017] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,020] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,025] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,031] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,039] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,049] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,061] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,074] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,090] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,108] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,130] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,156] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,183] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,519] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,520] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,520] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,521] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,522] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,523] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,526] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,530] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,535] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,542] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,550] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,559] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,571] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,587] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,603] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,623] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,950] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,950] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,951] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,952] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,953] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,954] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,957] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,961] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,966] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,975] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,984] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:22,995] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,009] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,026] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,045] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,066] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,089] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,429] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,429] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,430] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,430] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,431] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,433] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,436] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,440] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,447] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,453] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,462] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,473] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,487] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,501] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,518] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,537] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,885] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,885] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,886] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,886] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,887] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,889] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,892] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,897] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,902] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,908] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,918] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,926] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,938] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,951] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:23,967] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,413] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,414] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,414] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,416] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,418] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,421] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,424] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,433] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,440] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,447] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,456] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,466] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,477] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,492] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,510] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,527] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,549] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,918] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,919] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,919] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,920] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,921] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,921] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,923] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,926] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,930] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,936] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,943] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,954] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,964] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:24,978] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:25,030] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:25,088] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:25,134] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:25,174] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:25,570] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:25,570] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:25,571] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:25,572] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:25,573] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:25,574] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:25,576] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:25,579] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:25,584] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:25,592] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:25,601] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:25,612] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:25,624] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:25,639] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:25,660] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:25,680] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:25,704] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,129] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,130] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,131] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,131] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,132] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,135] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,140] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,144] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,153] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,162] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,174] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,187] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,205] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,226] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,248] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,271] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,294] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,672] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,672] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,673] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,673] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,674] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,675] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,678] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,681] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,686] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,692] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,702] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,712] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,725] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,741] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,757] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,773] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:26,793] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,234] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,235] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,235] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,235] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,236] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,237] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,239] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,242] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,246] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,252] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,261] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,272] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,284] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,297] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,314] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,332] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,353] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,378] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,733] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,734] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,734] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,735] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,735] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,737] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,738] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,742] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,746] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,752] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,760] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,769] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,781] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,793] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,808] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,824] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,856] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:27,881] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,266] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,267] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,267] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,268] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,269] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,270] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,273] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,277] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,283] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,288] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,296] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,306] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,317] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,331] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,348] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,366] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,389] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,415] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,446] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,863] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,864] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,864] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,865] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,867] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,869] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,872] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,875] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,882] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,889] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,896] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,905] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,920] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,937] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,955] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:28,975] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:29,005] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:29,429] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:29,430] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:29,431] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:29,431] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:29,433] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:29,434] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:29,435] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:29,438] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:29,443] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:29,448] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:29,458] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:29,470] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:29,485] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:29,500] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:29,517] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:29,538] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:29,561] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:29,587] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,000] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,001] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,001] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,002] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,003] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,004] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,006] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,009] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,015] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,020] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,026] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,033] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,043] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,054] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,067] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,082] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,101] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,122] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,515] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,515] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,516] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,518] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,519] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,520] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,522] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,525] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,532] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,538] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,545] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,554] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,566] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,582] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,598] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,617] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,635] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,663] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:30,687] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,063] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,064] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,064] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,065] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,066] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,067] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,070] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,073] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,076] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,082] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,089] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,096] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,104] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,115] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,127] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,143] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,162] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,184] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,205] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,590] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,590] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,590] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,591] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,592] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,594] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,596] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,600] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,604] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,610] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,617] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,625] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,637] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,651] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,667] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,686] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:31,707] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,095] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,097] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,097] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,098] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,101] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,103] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,105] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,108] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,113] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,120] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,129] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,138] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,155] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,170] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,185] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,203] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,223] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,245] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,603] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,604] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,604] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,605] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,605] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,607] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,609] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,612] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,616] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,621] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,626] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,634] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,642] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,652] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,667] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,683] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,700] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,720] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:32,741] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,094] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,094] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,095] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,095] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,096] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,097] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,099] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,102] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,106] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,111] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,118] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,125] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,134] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,144] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,157] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,173] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,550] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,551] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,551] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,552] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,553] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,556] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,558] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,562] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,567] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,572] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,578] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,587] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,595] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,607] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,622] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:33,640] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,103] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,103] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,104] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,105] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,106] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,108] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,111] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,114] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,120] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,126] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,135] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,153] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,167] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,186] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,207] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,231] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,260] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,645] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,645] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,645] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,646] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,648] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,650] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,653] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,656] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,660] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,666] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,673] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,681] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,690] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,702] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,715] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:34,730] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,081] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,082] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,082] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,083] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,084] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,085] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,087] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,090] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,096] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,103] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,110] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,119] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,130] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,143] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,160] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,522] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,522] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,523] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,524] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,524] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,526] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,529] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,532] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,536] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,542] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,551] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,560] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,570] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,584] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,599] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,614] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,988] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,988] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,988] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,989] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,990] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,991] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,993] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:35,996] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,000] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,004] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,010] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,019] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,029] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,041] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,054] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,070] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,088] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,492] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,492] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,493] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,493] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,495] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,496] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,498] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,501] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,507] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,512] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,518] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,527] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,535] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,547] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,560] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,887] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,888] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,888] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,889] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,890] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,892] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,894] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,899] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,904] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,909] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,916] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,924] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,939] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:36,951] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,323] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,324] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,325] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,326] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,327] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,329] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,334] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,338] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,344] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,352] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,362] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,373] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,387] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,404] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,420] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,907] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,908] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,908] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,909] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,910] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,911] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,914] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,918] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,922] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,927] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,934] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,968] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,984] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:37,996] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,365] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,365] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,366] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,366] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,368] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,369] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,372] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,375] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,380] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,386] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,393] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,402] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,412] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,425] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,784] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,785] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,785] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,786] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,787] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,788] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,790] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,793] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,797] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,802] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,808] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,815] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,825] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,835] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:38,847] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,179] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,179] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,179] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,180] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,181] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,182] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,184] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,187] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,190] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,195] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,201] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,209] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,218] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,229] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,557] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,557] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,558] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,558] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,559] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,560] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,562] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,566] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,570] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,574] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,580] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,590] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,599] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,610] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,623] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,947] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,948] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,949] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,949] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,950] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,952] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,954] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,956] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,960] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,964] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,970] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,977] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,986] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:39,997] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,009] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,334] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,335] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,335] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,336] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,337] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,339] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,340] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,343] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,347] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,352] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,357] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,365] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,374] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,385] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,397] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,411] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,742] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,743] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,743] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,743] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,744] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,745] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,747] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,749] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,752] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,756] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,762] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,770] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,778] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,788] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:40,799] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:41,133] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:41,135] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:41,135] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:41,136] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:41,136] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:41,138] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:41,139] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:41,144] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:41,148] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:41,153] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:41,159] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:41,167] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:41,176] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:02:41,186] - camera_test.py [Line:226] - [INFO]-[thread:123145570029568]-[process:1512] - 当前进程:1512.遇到了人 +[2021-01-19 14:03:08,069] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,070] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,070] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,071] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,072] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,073] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,076] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,081] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,089] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,098] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,112] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,126] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,148] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,168] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,191] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,220] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,612] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,612] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,613] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,614] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,615] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,617] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,620] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,624] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,631] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,641] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,652] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,665] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,681] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,696] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,716] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:08,740] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,122] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,122] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,123] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,123] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,124] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,125] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,129] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,135] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,142] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,152] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,163] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,175] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,193] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,211] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,237] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,606] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,607] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,607] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,608] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,609] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,610] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,612] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,616] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,621] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,628] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,635] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,645] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,656] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,671] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:09,688] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,026] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,027] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,027] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,028] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,029] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,030] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,032] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,035] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,040] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,048] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,056] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,068] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,079] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,093] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,108] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,439] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,440] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,440] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,441] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,442] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,443] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,446] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,449] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,455] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,462] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,472] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,481] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,492] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,506] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,835] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,835] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,836] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,836] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,837] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,839] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,842] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,846] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,851] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,858] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,868] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,878] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:10,888] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,229] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,230] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,230] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,230] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,231] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,233] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,235] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,238] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,242] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,250] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,257] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,265] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,277] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,290] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,305] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,724] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,725] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,725] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,726] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,727] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,728] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,731] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,734] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,738] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,745] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,752] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,761] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,774] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,789] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,806] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,824] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:11,844] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,243] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,244] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,244] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,244] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,246] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,248] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,250] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,255] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,261] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,269] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,277] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,289] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,301] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,316] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,334] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,361] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,389] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,419] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,450] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,830] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,831] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,831] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,832] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,833] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,834] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,836] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,839] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,844] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,852] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,859] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,870] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,881] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,894] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,909] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,928] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,950] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:12,974] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:13,000] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:13,442] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:13,443] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:13,444] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:13,446] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:13,447] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:13,450] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:13,455] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:13,460] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:13,474] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:13,487] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:13,510] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:13,531] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:13,570] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:13,610] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:13,659] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:13,709] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,247] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,250] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,250] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,251] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,253] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,255] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,258] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,264] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,270] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,277] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,288] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,300] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,313] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,330] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,353] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,376] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,402] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,785] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,786] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,786] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,787] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,788] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,790] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,792] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,796] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,801] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,808] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,817] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,827] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,842] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,855] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,875] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:14,896] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:15,559] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:15,559] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:15,559] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:15,560] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:15,561] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:15,563] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:15,566] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:15,571] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:15,577] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:15,588] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:15,601] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:15,616] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:15,653] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:15,682] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:15,713] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,181] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,183] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,184] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,186] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,188] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,203] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,208] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,215] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,220] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,229] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,240] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,251] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,266] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,283] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,301] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,325] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,350] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,718] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,719] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,719] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,720] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,721] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,722] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,724] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,727] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,730] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,737] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,743] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,754] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,765] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,779] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,810] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,860] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,904] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:16,991] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:17,522] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:17,523] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:17,523] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:17,524] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:17,525] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:17,526] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:17,528] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:17,532] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:17,538] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:17,547] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:17,556] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:17,568] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:17,581] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:17,598] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:17,618] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:17,640] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:17,666] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,023] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,024] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,024] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,025] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,026] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,027] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,030] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,034] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,040] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,047] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,055] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,066] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,079] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,094] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,110] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,135] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,154] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,512] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,512] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,513] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,513] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,514] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,516] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,518] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,522] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,527] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,535] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,543] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,554] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,567] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,582] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,598] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,615] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,635] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,984] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,985] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,985] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,986] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,986] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,987] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,989] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,991] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,994] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:18,999] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,006] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,016] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,025] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,037] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,050] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,065] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,084] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,104] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,451] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,451] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,452] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,452] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,453] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,454] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,456] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,459] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,463] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,468] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,476] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,485] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,497] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,509] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,523] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,538] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,557] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,579] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,927] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,927] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,927] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,928] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,929] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,930] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,933] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,936] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,939] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,944] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,951] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,959] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,968] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,982] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:19,997] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,011] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,030] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,052] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,078] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,430] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,431] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,432] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,432] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,433] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,434] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,436] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,440] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,444] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,450] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,456] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,464] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,474] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,485] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,499] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,514] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,532] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,878] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,879] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,880] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,880] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,881] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,882] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,883] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,886] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,889] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,893] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,901] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,909] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,920] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,930] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,944] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,961] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:20,981] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,002] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,357] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,357] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,358] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,358] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,359] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,361] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,367] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,370] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,374] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,380] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,387] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,396] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,405] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,416] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,431] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,447] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,467] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,488] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,846] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,847] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,847] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,848] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,849] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,850] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,852] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,854] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,859] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,867] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,874] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,881] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,888] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,899] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,912] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,927] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,946] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,966] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:21,989] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,346] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,347] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,347] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,347] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,348] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,350] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,353] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,356] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,359] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,366] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,374] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,382] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,392] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,403] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,417] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,432] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,451] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,475] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,502] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,875] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,876] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,876] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,877] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,878] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,880] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,882] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,885] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,889] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,894] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,903] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,911] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,920] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,934] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,949] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,965] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:22,986] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,348] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,348] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,349] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,349] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,350] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,351] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,353] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,355] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,358] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,363] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,371] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,378] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,390] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,434] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,449] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,465] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,484] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,505] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,863] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,864] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,864] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,865] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,866] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,867] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,869] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,871] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,875] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,882] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,887] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,894] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,905] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,916] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,931] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,946] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,965] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:23,985] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,009] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,406] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,407] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,407] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,408] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,408] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,410] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,413] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,417] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,421] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,428] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,437] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,445] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,456] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,469] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,483] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,500] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,864] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,864] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,865] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,865] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,866] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,868] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,869] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,872] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,876] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,881] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,888] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,895] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,903] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,914] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,925] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:24,941] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,285] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,286] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,286] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,287] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,288] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,289] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,291] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,294] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,299] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,303] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,311] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,318] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,327] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,338] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,352] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,366] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,383] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,730] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,731] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,731] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,732] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,733] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,735] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,737] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,740] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,745] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,750] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,756] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,765] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,774] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,785] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,798] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:25,814] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,155] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,156] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,156] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,156] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,157] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,158] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,160] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,164] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,169] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,174] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,183] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,193] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,204] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,215] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,228] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,566] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,567] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,567] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,568] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,569] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,570] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,572] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,575] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,580] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,585] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,591] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,598] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,608] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,620] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,632] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:26,647] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,002] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,002] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,003] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,003] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,004] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,005] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,006] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,008] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,012] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,015] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,020] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,028] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,038] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,050] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,063] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,077] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,093] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,452] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,452] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,453] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,453] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,455] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,457] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,460] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,465] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,469] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,475] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,486] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,496] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,509] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,523] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,541] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,982] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,983] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,984] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,985] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,987] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,989] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,991] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:27,995] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,000] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,005] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,014] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,021] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,031] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,041] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,448] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,448] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,449] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,450] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,451] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,453] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,455] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,460] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,463] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,469] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,475] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,483] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,493] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,503] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,516] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,846] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,846] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,846] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,847] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,848] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,849] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,851] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,854] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,859] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,864] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,869] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,877] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,887] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:28,897] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,270] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,270] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,271] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,271] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,272] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,273] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,276] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,279] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,282] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,288] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,295] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,302] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,312] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,323] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,726] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,727] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,727] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,728] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,729] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,731] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,733] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,737] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,743] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,750] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,757] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,767] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,780] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,794] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:29,809] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,214] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,215] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,215] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,216] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,217] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,219] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,221] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,224] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,228] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,233] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,242] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,251] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,265] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,278] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,674] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,674] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,674] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,675] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,676] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,678] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,680] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,683] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,687] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,693] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,699] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,708] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,720] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,731] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:30,746] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,099] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,099] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,100] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,100] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,102] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,103] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,105] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,108] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,113] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,118] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,123] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,130] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,140] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,150] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,162] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,516] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,517] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,517] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,518] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,520] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,521] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,523] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,526] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,530] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,536] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,542] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,550] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,561] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,572] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,586] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:31,602] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,001] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,001] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,002] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,002] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,003] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,005] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,007] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,010] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,017] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,023] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,032] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,041] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,053] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,066] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,084] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,420] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,421] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,421] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,422] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,422] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,423] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,425] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,427] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,430] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,435] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,442] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,449] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,457] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,468] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,803] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,804] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,804] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,805] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,806] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,808] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,810] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,813] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,817] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,822] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,829] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,838] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,847] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:32,857] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,233] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,234] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,234] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,235] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,236] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,236] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,238] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,239] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,242] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,254] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,272] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,281] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,296] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,309] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,322] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,893] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,896] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,898] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,899] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,901] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,904] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,908] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,916] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,922] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,934] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,941] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,955] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,967] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,978] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:33,997] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,012] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,026] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,412] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,414] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,415] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,417] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,421] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,424] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,426] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,428] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,435] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,457] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,465] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,474] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,482] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,491] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,813] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,813] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,813] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,814] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,815] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,816] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,818] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,821] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,823] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,827] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,832] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,838] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,845] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,854] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,864] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:34,877] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,215] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,216] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,217] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,217] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,218] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,219] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,221] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,223] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,226] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,231] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,235] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,241] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,248] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,257] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,267] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,281] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,606] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,607] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,607] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,608] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,609] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,610] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,611] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,613] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,615] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,619] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,623] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,630] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,637] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,646] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,658] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:35,672] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,016] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,017] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,017] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,018] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,019] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,020] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,023] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,026] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,031] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,036] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,042] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,049] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,057] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,067] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,079] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,092] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,413] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,413] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,414] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,414] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,416] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,417] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,419] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,422] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,426] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,431] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,438] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,447] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,457] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,469] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,481] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,494] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,824] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,824] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,824] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,825] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,827] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,837] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,842] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,846] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,850] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,856] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,864] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,872] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,883] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,895] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,907] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:36,920] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,251] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,251] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,252] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,252] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,253] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,254] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,256] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,259] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,263] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,268] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,273] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,281] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,289] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,297] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,641] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,641] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,641] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,642] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,643] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,644] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,645] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,647] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,650] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,654] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,659] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,666] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,673] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,682] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:37,692] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,008] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,009] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,009] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,010] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,010] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,012] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,013] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,016] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,020] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,025] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,029] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,035] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,042] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,051] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,376] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,377] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,377] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,377] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,378] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,379] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,381] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,383] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,386] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,390] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,394] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,400] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,409] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,418] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,431] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,445] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,459] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,781] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,782] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,782] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,782] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,783] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,784] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,786] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,788] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,791] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,795] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,800] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,806] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,815] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,824] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:38,835] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,174] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,175] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,175] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,176] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,176] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,178] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,179] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,182] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,185] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,190] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,195] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,202] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,211] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,221] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,230] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,576] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,577] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,577] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,578] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,579] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,580] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,582] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,584] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,587] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,592] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,597] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,604] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,614] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,623] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:03:39,634] - camera_test.py [Line:226] - [INFO]-[thread:123145316044800]-[process:1525] - 当前进程:1525.遇到了人 +[2021-01-19 14:05:37,615] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:37,616] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:37,617] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:37,618] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:37,619] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:37,621] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:37,626] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:37,630] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:37,636] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:37,645] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:37,663] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:37,676] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:37,691] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:37,706] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:37,725] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:37,753] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,195] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,195] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,196] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,197] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,198] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,200] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,203] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,207] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,213] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,224] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,235] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,249] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,266] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,283] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,302] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,325] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,720] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,721] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,721] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,722] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,722] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,734] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,748] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,756] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,766] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,776] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,787] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,800] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,815] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,831] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:38,851] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,206] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,206] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,206] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,207] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,208] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,209] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,211] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,215] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,219] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,225] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,234] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,243] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,255] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,270] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,286] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,624] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,624] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,624] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,625] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,626] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,628] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,630] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,633] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,639] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,646] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,657] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,671] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,685] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,701] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:39,719] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,074] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,075] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,075] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,076] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,077] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,079] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,082] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,086] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,092] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,100] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,111] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,120] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,132] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,146] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,508] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,508] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,509] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,510] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,511] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,513] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,516] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,521] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,528] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,536] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,547] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,569] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,583] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,932] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,933] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,933] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,934] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,935] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,936] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,938] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,941] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,946] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,952] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,960] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,970] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,981] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:40,997] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,013] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,354] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,355] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,355] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,356] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,357] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,358] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,361] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,364] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,367] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,373] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,380] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,388] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,398] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,411] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,427] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,444] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,465] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,807] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,807] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,807] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,808] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,809] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,811] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,813] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,815] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,820] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,825] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,833] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,841] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,853] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,864] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,878] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,895] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,916] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,939] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:41,965] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,307] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,308] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,308] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,309] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,309] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,310] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,312] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,316] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,320] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,326] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,334] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,344] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,356] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,371] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,390] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,413] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,440] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,468] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,499] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,882] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,883] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,883] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,884] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,885] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,887] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,890] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,894] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,901] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,911] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,920] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,930] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,942] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,957] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,977] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:42,999] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,337] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,337] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,338] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,339] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,340] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,342] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,345] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,349] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,354] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,362] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,373] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,383] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,396] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,412] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,434] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,452] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,474] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,840] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,841] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,842] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,842] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,844] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,846] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,848] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,853] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,858] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,864] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,872] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,883] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,896] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,910] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,926] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:43,944] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,353] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,353] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,354] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,354] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,355] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,357] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,360] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,364] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,370] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,378] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,390] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,402] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,413] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,426] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,441] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,813] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,814] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,814] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,815] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,816] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,818] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,820] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,824] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,829] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,838] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,847] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,860] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,875] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,893] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,913] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,933] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:44,959] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,320] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,320] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,321] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,321] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,322] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,323] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,325] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,327] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,330] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,336] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,342] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,352] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,360] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,372] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,385] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,401] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,420] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,441] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,788] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,788] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,788] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,789] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,790] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,791] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,792] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,795] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,799] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,805] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,813] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,822] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,834] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,846] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,861] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,878] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:05:45,898] - camera_test.py [Line:226] - [INFO]-[thread:123145450037248]-[process:1545] - 当前进程:1545.遇到了人 +[2021-01-19 14:16:17,075] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:17,437] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:17,827] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:18,160] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:18,469] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:18,762] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:19,049] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:19,343] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:19,638] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:19,934] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:20,231] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:20,518] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:20,806] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:21,095] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:21,380] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:21,671] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:21,961] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:22,266] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:22,561] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:22,855] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:23,147] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:23,443] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:23,740] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:24,040] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:24,340] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:24,654] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:24,964] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:25,259] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:25,584] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:25,884] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:26,184] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:26,498] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:26,796] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:27,099] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:27,401] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:27,698] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:27,999] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:28,297] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:28,599] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:28,902] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:29,221] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:29,541] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:29,856] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:30,167] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:30,510] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:30,862] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:31,248] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:31,590] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:31,960] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:32,281] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:32,582] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:16:32,879] - camera_test.py [Line:226] - [INFO]-[thread:123145545912320]-[process:1638] - 当前进程:1638.遇到了人 +[2021-01-19 14:17:28,651] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,652] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,652] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,653] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,653] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,654] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,657] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,659] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,663] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,669] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,677] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,687] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,697] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,713] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,728] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,745] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,767] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,792] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,820] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,852] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,885] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,918] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,955] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:28,992] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,029] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,066] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,394] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,394] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,395] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,396] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,397] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,399] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,402] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,406] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,411] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,420] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,429] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,441] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,455] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,469] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,486] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,506] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,530] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,554] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,583] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,615] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,647] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,685] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,726] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,774] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,820] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,872] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,925] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:29,980] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,034] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,091] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,147] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,206] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,535] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,536] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,536] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,536] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,537] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,538] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,540] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,543] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,547] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,552] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,559] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,570] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,582] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,593] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,608] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,625] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,645] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,670] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,694] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,720] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,754] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,789] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,830] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,874] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,922] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:30,974] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,027] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,082] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,138] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,194] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,254] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,312] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,646] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,647] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,647] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,648] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,648] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,649] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,652] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,656] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,661] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,667] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,675] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,683] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,695] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,707] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,721] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,737] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,757] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,778] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,802] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,827] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,855] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,885] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,920] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:31,958] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,001] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,048] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,096] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,160] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,215] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,270] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,324] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,690] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,690] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,691] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,691] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,692] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,693] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,695] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,697] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,701] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,707] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,714] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,723] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,734] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,750] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,767] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,784] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,801] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,824] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,849] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,879] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,913] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,947] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:32,986] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,026] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,068] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,112] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,157] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,207] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,254] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,303] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,354] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,682] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,683] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,683] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,684] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,685] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,687] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,690] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,693] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,699] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,706] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,713] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,724] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,735] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,749] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,766] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,785] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,808] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,832] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,858] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,891] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,928] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:33,969] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,011] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,054] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,102] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,156] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,216] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,275] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,333] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,386] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,444] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,502] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,567] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,904] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,905] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,905] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,906] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,907] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,909] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,911] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,915] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,923] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,930] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,940] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,950] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,964] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,978] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:34,993] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,013] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,038] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,062] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,090] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,120] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,156] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,191] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,225] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,264] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,308] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,352] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,397] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,442] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,488] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,536] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,585] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,925] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,925] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,926] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,926] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,927] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,928] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,930] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,933] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,937] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,944] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,953] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,962] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,973] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:35,987] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:36,001] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:36,018] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:36,039] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:36,064] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:36,091] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:36,121] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:36,152] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:36,191] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:36,231] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:36,272] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:36,310] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:36,353] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:36,397] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:36,446] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:36,493] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:36,543] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:36,596] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:36,646] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,108] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,110] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,111] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,112] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,114] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,116] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,119] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,124] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,130] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,139] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,153] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,183] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,207] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,229] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,262] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,287] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,325] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,374] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,422] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,462] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,540] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,594] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,660] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,717] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,769] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,829] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,873] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,921] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:37,970] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,024] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,436] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,436] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,437] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,437] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,442] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,444] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,447] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,454] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,460] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,465] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,470] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,477] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,485] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,496] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,508] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,524] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,542] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,564] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,591] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,620] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,653] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,692] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,734] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,778] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,824] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,869] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,917] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:38,963] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,011] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,059] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,108] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,582] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,582] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,583] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,584] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,585] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,586] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,589] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,592] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,597] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,602] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,611] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,620] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,634] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,662] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,679] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,700] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,725] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,750] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,775] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,803] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,834] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,863] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,896] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,934] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:39,972] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,012] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,053] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,094] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,138] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,183] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,230] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,558] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,559] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,559] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,560] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,561] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,562] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,565] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,568] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,573] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,580] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,587] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,597] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,610] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,624] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,639] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,657] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,676] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,698] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,724] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,753] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,783] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,816] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,850] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,888] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,928] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:40,968] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,009] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,050] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,093] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,138] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,540] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,541] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,541] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,542] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,543] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,545] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,548] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,552] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,559] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,567] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,579] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,598] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,620] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,646] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,678] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,700] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,725] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,746] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,770] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,797] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,830] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,862] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,898] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:41,953] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,009] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,047] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,085] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,145] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,583] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,584] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,584] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,585] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,585] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,587] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,588] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,591] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,595] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,601] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,611] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,623] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,642] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,660] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,679] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,703] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,731] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,756] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,791] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,830] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,863] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,894] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,926] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,963] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:42,998] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,039] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,079] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,121] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,165] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,210] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,259] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,674] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,675] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,675] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,675] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,676] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,677] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,679] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,682] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,687] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,694] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,702] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,712] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,723] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,736] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,754] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,783] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,838] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,883] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,920] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,952] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:43,988] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,036] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,088] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,134] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,174] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,225] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,268] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,330] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,394] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,456] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,833] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,834] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,834] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,835] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,836] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,838] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,841] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,847] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,854] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,863] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,873] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,889] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,907] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,926] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,948] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,972] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:44,997] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:45,021] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:45,049] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:45,082] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:45,118] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:45,156] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:45,205] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:45,249] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:45,296] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:45,351] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:45,396] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:45,445] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:45,499] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:45,552] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:45,613] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,026] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,026] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,026] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,027] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,028] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,030] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,032] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,036] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,040] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,045] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,052] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,062] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,073] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,087] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,103] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,120] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,141] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,188] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,221] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,253] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,284] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,317] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,351] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,385] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,420] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,456] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,498] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,848] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,848] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,849] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,849] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,851] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,853] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,855] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,860] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,866] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,872] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,881] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,891] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,904] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,924] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,942] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,960] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:46,981] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,007] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,033] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,062] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,097] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,132] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,177] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,217] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,257] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,298] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,338] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,380] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,422] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,467] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,803] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,804] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,804] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,805] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,806] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,808] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,813] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,817] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,822] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,829] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,837] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,846] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,858] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,870] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,884] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,904] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,926] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,952] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:47,984] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,011] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,043] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,080] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,130] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,182] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,235] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,288] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,354] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,414] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,477] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,820] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,820] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,821] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,821] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,822] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,824] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,827] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,831] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,836] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,842] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,849] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,857] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,870] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,882] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,898] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,915] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,937] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,963] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:48,991] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,025] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,060] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,097] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,138] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,178] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,218] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,257] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,297] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,341] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,385] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,431] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,749] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,750] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,750] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,750] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,751] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,753] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,756] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,760] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,766] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,774] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,783] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,793] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,805] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,818] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,832] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,851] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,873] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,897] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,925] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,958] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:49,991] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,029] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,068] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,107] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,150] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,191] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,234] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,276] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,347] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,395] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,749] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,750] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,750] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,750] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,751] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,752] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,754] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,757] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,761] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,766] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,772] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,782] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,791] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,804] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,818] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,837] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,856] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,879] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,906] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,935] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:50,968] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,005] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,038] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,077] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,114] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,150] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,189] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,229] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,270] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,311] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,641] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,641] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,641] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,642] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,643] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,645] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,647] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,650] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,654] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,659] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,666] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,675] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,687] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,699] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,716] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,734] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,755] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,779] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,806] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,834] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,862] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,891] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,923] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,956] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:51,991] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,025] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,062] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,101] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,408] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,409] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,409] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,409] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,410] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,411] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,412] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,415] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,419] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,424] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,430] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,439] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,451] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,463] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,479] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,494] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,512] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,533] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,559] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,584] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,609] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,643] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,674] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,719] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,760] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,800] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,839] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,897] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:52,956] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,404] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,404] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,404] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,405] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,405] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,407] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,408] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,411] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,416] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,423] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,431] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,444] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,455] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,468] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,482] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,502] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,523] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,546] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,572] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,598] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,630] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,664] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,702] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,740] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,779] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,819] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,859] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,902] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,945] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:53,991] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,038] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,346] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,347] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,347] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,348] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,349] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,350] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,353] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,357] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,362] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,369] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,377] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,386] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,398] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,411] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,448] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,466] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,486] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,510] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,535] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,561] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,588] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,624] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,658] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,696] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,736] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,773] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,810] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:54,852] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,165] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,165] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,165] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,167] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,168] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,170] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,173] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,177] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,180] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,186] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,192] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,202] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,213] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,227] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,243] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,262] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,282] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,305] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,330] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,354] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,392] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,422] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,451] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,483] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,516] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,552] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,588] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:17:55,626] - camera_test.py [Line:226] - [INFO]-[thread:123145357094912]-[process:1655] - 当前进程:1655.遇到了人 +[2021-01-19 14:22:29,186] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,187] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,187] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,187] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,188] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,188] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,188] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,189] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,189] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,189] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,190] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,191] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,191] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,191] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,192] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,192] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,192] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,193] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,193] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,193] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,194] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,194] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,194] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,195] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,195] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,196] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,515] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,516] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,516] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,516] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,517] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,517] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,518] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,518] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,518] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,519] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,519] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,520] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,520] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,521] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,521] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,522] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,522] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,522] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,523] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,524] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,525] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,525] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,526] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,526] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,526] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,527] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,527] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,527] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,528] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,528] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,529] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,530] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,801] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,801] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,802] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,802] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,802] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,803] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,803] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,804] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,804] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,805] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,805] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,806] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,806] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,806] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,807] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,807] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,807] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,808] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,808] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,809] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,809] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,809] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,810] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,810] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,810] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,811] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,811] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,812] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,812] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,813] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,813] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:29,813] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,096] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,097] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,097] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,097] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,098] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,098] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,098] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,099] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,099] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,099] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,100] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,100] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,100] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,101] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,101] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,101] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,102] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,102] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,102] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,103] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,103] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,104] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,104] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,105] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,105] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,106] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,106] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,106] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,107] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,107] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,108] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,389] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,389] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,389] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,390] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,390] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,390] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,391] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,391] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,391] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,392] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,392] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,393] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,393] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,394] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,400] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,400] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,401] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,401] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,402] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,402] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,402] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,403] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,403] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,404] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,405] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,405] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,406] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,406] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,406] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,407] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,407] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,666] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,666] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,667] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,667] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,667] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,668] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,668] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,668] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,669] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,669] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,669] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,670] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,670] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,670] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,671] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,671] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,671] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,672] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,672] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,673] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,673] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,673] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,674] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,674] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,674] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,675] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,675] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,675] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,675] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,676] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,676] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,676] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,677] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,934] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,935] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,935] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,935] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,936] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,936] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,937] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,937] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,937] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,938] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,938] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,938] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,939] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,939] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,940] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,940] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,940] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,941] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,941] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,942] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,943] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,943] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,944] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,944] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,944] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,944] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,945] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,945] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,945] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,946] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:30,946] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,206] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,207] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,207] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,207] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,208] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,208] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,208] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,209] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,209] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,209] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,210] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,210] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,210] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,210] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,211] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,211] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,211] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,212] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,212] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,212] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,213] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,213] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,213] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,214] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,214] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,214] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,215] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,215] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,216] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,216] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,217] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,218] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,476] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,476] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,477] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,477] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,477] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,478] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,478] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,478] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,479] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,479] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,479] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,480] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,480] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,480] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,481] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,489] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,491] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,491] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,492] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,492] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,493] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,493] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,493] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,493] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,494] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,494] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,495] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,495] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,495] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,496] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,830] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,831] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,831] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,831] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,832] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,832] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,832] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,833] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,833] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,834] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,834] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,835] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,836] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,837] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,838] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,838] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,838] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,839] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,839] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,839] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,840] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,840] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,841] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,841] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,842] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,842] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,842] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,843] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,843] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,844] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:31,844] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,151] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,152] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,153] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,153] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,153] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,154] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,155] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,156] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,157] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,157] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,158] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,159] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,159] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,160] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,161] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,162] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,163] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,163] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,165] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,166] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,167] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,167] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,168] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,168] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,169] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,169] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,170] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,170] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,171] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,171] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,171] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,477] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,477] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,478] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,478] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,479] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,479] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,480] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,481] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,481] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,481] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,482] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,482] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,483] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,483] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,484] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,485] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,485] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,486] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,486] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,487] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,487] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,488] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,489] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,489] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,490] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,490] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,491] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,492] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,493] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,493] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,796] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,796] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,797] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,797] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,797] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,798] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,798] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,799] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,799] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,799] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,800] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,800] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,801] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,801] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,801] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,802] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,802] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,803] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,804] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,804] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,805] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,805] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,806] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,806] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,807] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,808] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,808] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:32,808] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:33,075] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:33,075] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:33,075] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:33,076] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:33,076] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:33,076] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:33,077] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:33,077] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:33,077] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:33,077] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:33,078] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:33,078] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:33,078] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 14:22:33,079] - camera_test.py [Line:226] - [INFO]-[thread:123145357017088]-[process:1681] - 当前进程:1681.遇到了人 +[2021-01-19 19:33:29,659] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:30,190] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:30,731] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:31,469] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:32,193] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:32,696] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:33,181] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:33,686] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:34,178] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:34,728] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:35,251] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:35,759] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:36,273] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:37,214] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:37,884] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:38,377] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:38,809] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:39,241] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:40,039] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:40,526] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:40,970] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:41,521] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:42,023] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:42,509] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:43,037] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:43,642] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:44,192] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:44,645] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:45,061] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:45,495] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:46,017] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:46,487] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:47,009] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:33:47,510] - camera.py [Line:226] - [INFO]-[thread:123145384316928]-[process:2258] - 当前进程:2258.遇到了人 +[2021-01-19 19:37:40,803] - camera.py [Line:226] - [INFO]-[thread:123145492058112]-[process:2291] - 当前进程:2291.遇到了人 +[2021-01-19 19:37:40,804] - camera.py [Line:226] - [INFO]-[thread:123145492058112]-[process:2291] - 当前进程:2291.遇到了人 +[2021-01-19 19:37:40,804] - camera.py [Line:226] - [INFO]-[thread:123145492058112]-[process:2291] - 当前进程:2291.遇到了人 +[2021-01-19 19:37:40,804] - camera.py [Line:226] - [INFO]-[thread:123145492058112]-[process:2291] - 当前进程:2291.遇到了人 +[2021-01-19 19:37:40,804] - camera.py [Line:226] - [INFO]-[thread:123145492058112]-[process:2291] - 当前进程:2291.遇到了人 +[2021-01-19 19:37:40,804] - camera.py [Line:226] - [INFO]-[thread:123145492058112]-[process:2291] - 当前进程:2291.遇到了人 +[2021-01-19 19:37:40,805] - camera.py [Line:226] - [INFO]-[thread:123145492058112]-[process:2291] - 当前进程:2291.遇到了人 +[2021-01-19 19:37:40,805] - camera.py [Line:226] - [INFO]-[thread:123145492058112]-[process:2291] - 当前进程:2291.遇到了人 +[2021-01-19 19:37:40,805] - camera.py [Line:226] - [INFO]-[thread:123145492058112]-[process:2291] - 当前进程:2291.遇到了人 +[2021-01-19 19:37:40,805] - camera.py [Line:226] - [INFO]-[thread:123145492058112]-[process:2291] - 当前进程:2291.遇到了人 +[2021-01-19 19:37:40,805] - camera.py [Line:226] - [INFO]-[thread:123145492058112]-[process:2291] - 当前进程:2291.遇到了人 +[2021-01-19 19:37:40,805] - camera.py [Line:226] - [INFO]-[thread:123145492058112]-[process:2291] - 当前进程:2291.遇到了人 +[2021-01-19 19:37:40,805] - camera.py [Line:226] - [INFO]-[thread:123145492058112]-[process:2291] - 当前进程:2291.遇到了人 +[2021-01-19 19:37:40,805] - camera.py [Line:226] - [INFO]-[thread:123145492058112]-[process:2291] - 当前进程:2291.遇到了人 +[2021-01-19 19:37:40,806] - camera.py [Line:226] - [INFO]-[thread:123145492058112]-[process:2291] - 当前进程:2291.遇到了人 +[2021-01-19 19:37:40,806] - camera.py [Line:226] - [INFO]-[thread:123145492058112]-[process:2291] - 当前进程:2291.遇到了人 diff --git a/models/__pycache__/common.cpython-38.pyc b/models/__pycache__/common.cpython-38.pyc index 084bd9d..34be2a9 100644 Binary files a/models/__pycache__/common.cpython-38.pyc and b/models/__pycache__/common.cpython-38.pyc differ diff --git a/models/__pycache__/experimental.cpython-38.pyc b/models/__pycache__/experimental.cpython-38.pyc index d7d22e3..c63cdd9 100644 Binary files a/models/__pycache__/experimental.cpython-38.pyc and b/models/__pycache__/experimental.cpython-38.pyc differ diff --git a/models/__pycache__/yolo.cpython-38.pyc b/models/__pycache__/yolo.cpython-38.pyc index ee235bc..d49a6e4 100644 Binary files a/models/__pycache__/yolo.cpython-38.pyc and b/models/__pycache__/yolo.cpython-38.pyc differ diff --git a/models/common.py b/models/common.py index 111af70..e8c07f4 100644 --- a/models/common.py +++ b/models/common.py @@ -1,24 +1,9 @@ +# This file contains modules common to various models import math -from copy import copy -from pathlib import Path -import numpy as np -import pandas as pd -import requests import torch import torch.nn as nn -import torch.nn.functional as F -from torchvision.ops import DeformConv2d -from PIL import Image -from torch.cuda import amp -from utils.datasets import letterbox -from utils.general import non_max_suppression, make_divisible, scale_coords, increment_path, xyxy2xywh -from utils.plots import color_list, plot_one_box -from utils.torch_utils import time_synchronized - - -##### basic #### def autopad(k, p=None): # kernel, padding # Pad to 'same' @@ -27,73 +12,9 @@ def autopad(k, p=None): # kernel, padding return p -class MP(nn.Module): - def __init__(self, k=2): - super(MP, self).__init__() - self.m = nn.MaxPool2d(kernel_size=k, stride=k) - - def forward(self, x): - return self.m(x) - - -class SP(nn.Module): - def __init__(self, k=3, s=1): - super(SP, self).__init__() - self.m = nn.MaxPool2d(kernel_size=k, stride=s, padding=k // 2) - - def forward(self, x): - return self.m(x) - - -class ReOrg(nn.Module): - def __init__(self): - super(ReOrg, self).__init__() - - def forward(self, x): # x(b,c,w,h) -> y(b,4c,w/2,h/2) - return torch.cat([x[..., ::2, ::2], x[..., 1::2, ::2], x[..., ::2, 1::2], x[..., 1::2, 1::2]], 1) - - -class Concat(nn.Module): - def __init__(self, dimension=1): - super(Concat, self).__init__() - self.d = dimension - - def forward(self, x): - return torch.cat(x, self.d) - - -class Chuncat(nn.Module): - def __init__(self, dimension=1): - super(Chuncat, self).__init__() - self.d = dimension - - def forward(self, x): - x1 = [] - x2 = [] - for xi in x: - xi1, xi2 = xi.chunk(2, self.d) - x1.append(xi1) - x2.append(xi2) - return torch.cat(x1+x2, self.d) - - -class Shortcut(nn.Module): - def __init__(self, dimension=0): - super(Shortcut, self).__init__() - self.d = dimension - - def forward(self, x): - return x[0]+x[1] - - -class Foldcut(nn.Module): - def __init__(self, dimension=0): - super(Foldcut, self).__init__() - self.d = dimension - - def forward(self, x): - x1, x2 = x.chunk(2, self.d) - return x1+x2 +def DWConv(c1, c2, k=1, s=1, act=True): + # Depthwise convolution + return Conv(c1, c2, k, s, g=math.gcd(c1, c2), act=act) class Conv(nn.Module): @@ -102,112 +23,17 @@ class Conv(nn.Module): super(Conv, self).__init__() self.conv = nn.Conv2d(c1, c2, k, s, autopad(k, p), groups=g, bias=False) self.bn = nn.BatchNorm2d(c2) - self.act = nn.SiLU() if act is True else (act if isinstance(act, nn.Module) else nn.Identity()) + self.act = nn.Hardswish() if act else nn.Identity() def forward(self, x): return self.act(self.bn(self.conv(x))) def fuseforward(self, x): return self.act(self.conv(x)) - - -class RobustConv(nn.Module): - # Robust convolution (use high kernel size 7-11 for: downsampling and other layers). Train for 300 - 450 epochs. - def __init__(self, c1, c2, k=7, s=1, p=None, g=1, act=True, layer_scale_init_value=1e-6): # ch_in, ch_out, kernel, stride, padding, groups - super(RobustConv, self).__init__() - self.conv_dw = Conv(c1, c1, k=k, s=s, p=p, g=c1, act=act) - self.conv1x1 = nn.Conv2d(c1, c2, 1, 1, 0, groups=1, bias=True) - self.gamma = nn.Parameter(layer_scale_init_value * torch.ones(c2)) if layer_scale_init_value > 0 else None - - def forward(self, x): - x = x.to(memory_format=torch.channels_last) - x = self.conv1x1(self.conv_dw(x)) - if self.gamma is not None: - x = x.mul(self.gamma.reshape(1, -1, 1, 1)) - return x - - -class RobustConv2(nn.Module): - # Robust convolution 2 (use [32, 5, 2] or [32, 7, 4] or [32, 11, 8] for one of the paths in CSP). - def __init__(self, c1, c2, k=7, s=4, p=None, g=1, act=True, layer_scale_init_value=1e-6): # ch_in, ch_out, kernel, stride, padding, groups - super(RobustConv2, self).__init__() - self.conv_strided = Conv(c1, c1, k=k, s=s, p=p, g=c1, act=act) - self.conv_deconv = nn.ConvTranspose2d(in_channels=c1, out_channels=c2, kernel_size=s, stride=s, - padding=0, bias=True, dilation=1, groups=1 - ) - self.gamma = nn.Parameter(layer_scale_init_value * torch.ones(c2)) if layer_scale_init_value > 0 else None - - def forward(self, x): - x = self.conv_deconv(self.conv_strided(x)) - if self.gamma is not None: - x = x.mul(self.gamma.reshape(1, -1, 1, 1)) - return x - - -def DWConv(c1, c2, k=1, s=1, act=True): - # Depthwise convolution - return Conv(c1, c2, k, s, g=math.gcd(c1, c2), act=act) - - -class GhostConv(nn.Module): - # Ghost Convolution https://github.com/huawei-noah/ghostnet - def __init__(self, c1, c2, k=1, s=1, g=1, act=True): # ch_in, ch_out, kernel, stride, groups - super(GhostConv, self).__init__() - c_ = c2 // 2 # hidden channels - self.cv1 = Conv(c1, c_, k, s, None, g, act) - self.cv2 = Conv(c_, c_, 5, 1, None, c_, act) - - def forward(self, x): - y = self.cv1(x) - return torch.cat([y, self.cv2(y)], 1) - - -class Stem(nn.Module): - # Stem - def __init__(self, c1, c2, k=1, s=1, p=None, g=1, act=True): # ch_in, ch_out, kernel, stride, padding, groups - super(Stem, self).__init__() - c_ = int(c2/2) # hidden channels - self.cv1 = Conv(c1, c_, 3, 2) - self.cv2 = Conv(c_, c_, 1, 1) - self.cv3 = Conv(c_, c_, 3, 2) - self.pool = torch.nn.MaxPool2d(2, stride=2) - self.cv4 = Conv(2 * c_, c2, 1, 1) - - def forward(self, x): - x = self.cv1(x) - return self.cv4(torch.cat((self.cv3(self.cv2(x)), self.pool(x)), dim=1)) - - -class DownC(nn.Module): - # Spatial pyramid pooling layer used in YOLOv3-SPP - def __init__(self, c1, c2, n=1, k=2): - super(DownC, self).__init__() - c_ = int(c1) # hidden channels - self.cv1 = Conv(c1, c_, 1, 1) - self.cv2 = Conv(c_, c2//2, 3, k) - self.cv3 = Conv(c1, c2//2, 1, 1) - self.mp = nn.MaxPool2d(kernel_size=k, stride=k) - def forward(self, x): - return torch.cat((self.cv2(self.cv1(x)), self.cv3(self.mp(x))), dim=1) - - -class SPP(nn.Module): - # Spatial pyramid pooling layer used in YOLOv3-SPP - def __init__(self, c1, c2, k=(5, 9, 13)): - super(SPP, self).__init__() - c_ = c1 // 2 # hidden channels - self.cv1 = Conv(c1, c_, 1, 1) - self.cv2 = Conv(c_ * (len(k) + 1), c2, 1, 1) - self.m = nn.ModuleList([nn.MaxPool2d(kernel_size=x, stride=1, padding=x // 2) for x in k]) - - def forward(self, x): - x = self.cv1(x) - return self.cv2(torch.cat([x] + [m(x) for m in self.m], 1)) - class Bottleneck(nn.Module): - # Darknet bottleneck + # Standard bottleneck def __init__(self, c1, c2, shortcut=True, g=1, e=0.5): # ch_in, ch_out, shortcut, groups, expansion super(Bottleneck, self).__init__() c_ = int(c2 * e) # hidden channels @@ -219,1801 +45,74 @@ class Bottleneck(nn.Module): return x + self.cv2(self.cv1(x)) if self.add else self.cv2(self.cv1(x)) -class Res(nn.Module): - # ResNet bottleneck - def __init__(self, c1, c2, shortcut=True, g=1, e=0.5): # ch_in, ch_out, shortcut, groups, expansion - super(Res, self).__init__() - c_ = int(c2 * e) # hidden channels - self.cv1 = Conv(c1, c_, 1, 1) - self.cv2 = Conv(c_, c_, 3, 1, g=g) - self.cv3 = Conv(c_, c2, 1, 1) - self.add = shortcut and c1 == c2 - - def forward(self, x): - return x + self.cv3(self.cv2(self.cv1(x))) if self.add else self.cv3(self.cv2(self.cv1(x))) - - -class ResX(Res): - # ResNet bottleneck - def __init__(self, c1, c2, shortcut=True, g=32, e=0.5): # ch_in, ch_out, shortcut, groups, expansion - super().__init__(c1, c2, shortcut, g, e) - c_ = int(c2 * e) # hidden channels - - -class Ghost(nn.Module): - # Ghost Bottleneck https://github.com/huawei-noah/ghostnet - def __init__(self, c1, c2, k=3, s=1): # ch_in, ch_out, kernel, stride - super(Ghost, self).__init__() - c_ = c2 // 2 - self.conv = nn.Sequential(GhostConv(c1, c_, 1, 1), # pw - DWConv(c_, c_, k, s, act=False) if s == 2 else nn.Identity(), # dw - GhostConv(c_, c2, 1, 1, act=False)) # pw-linear - self.shortcut = nn.Sequential(DWConv(c1, c1, k, s, act=False), - Conv(c1, c2, 1, 1, act=False)) if s == 2 else nn.Identity() - - def forward(self, x): - return self.conv(x) + self.shortcut(x) - -##### end of basic ##### - - -##### cspnet ##### - -class SPPCSPC(nn.Module): - # CSP https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=False, g=1, e=0.5, k=(5, 9, 13)): - super(SPPCSPC, self).__init__() - c_ = int(2 * c2 * e) # hidden channels - self.cv1 = Conv(c1, c_, 1, 1) - self.cv2 = Conv(c1, c_, 1, 1) - self.cv3 = Conv(c_, c_, 3, 1) - self.cv4 = Conv(c_, c_, 1, 1) - self.m = nn.ModuleList([nn.MaxPool2d(kernel_size=x, stride=1, padding=x // 2) for x in k]) - self.cv5 = Conv(4 * c_, c_, 1, 1) - self.cv6 = Conv(c_, c_, 3, 1) - self.cv7 = Conv(2 * c_, c2, 1, 1) - - def forward(self, x): - x1 = self.cv4(self.cv3(self.cv1(x))) - y1 = self.cv6(self.cv5(torch.cat([x1] + [m(x1) for m in self.m], 1))) - y2 = self.cv2(x) - return self.cv7(torch.cat((y1, y2), dim=1)) - -class GhostSPPCSPC(SPPCSPC): - # CSP https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=False, g=1, e=0.5, k=(5, 9, 13)): - super().__init__(c1, c2, n, shortcut, g, e, k) - c_ = int(2 * c2 * e) # hidden channels - self.cv1 = GhostConv(c1, c_, 1, 1) - self.cv2 = GhostConv(c1, c_, 1, 1) - self.cv3 = GhostConv(c_, c_, 3, 1) - self.cv4 = GhostConv(c_, c_, 1, 1) - self.cv5 = GhostConv(4 * c_, c_, 1, 1) - self.cv6 = GhostConv(c_, c_, 3, 1) - self.cv7 = GhostConv(2 * c_, c2, 1, 1) - - -class GhostStem(Stem): - # Stem - def __init__(self, c1, c2, k=1, s=1, p=None, g=1, act=True): # ch_in, ch_out, kernel, stride, padding, groups - super().__init__(c1, c2, k, s, p, g, act) - c_ = int(c2/2) # hidden channels - self.cv1 = GhostConv(c1, c_, 3, 2) - self.cv2 = GhostConv(c_, c_, 1, 1) - self.cv3 = GhostConv(c_, c_, 3, 2) - self.cv4 = GhostConv(2 * c_, c2, 1, 1) - - -class BottleneckCSPA(nn.Module): - # CSP https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=True, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super(BottleneckCSPA, self).__init__() - c_ = int(c2 * e) # hidden channels - self.cv1 = Conv(c1, c_, 1, 1) - self.cv2 = Conv(c1, c_, 1, 1) - self.cv3 = Conv(2 * c_, c2, 1, 1) - self.m = nn.Sequential(*[Bottleneck(c_, c_, shortcut, g, e=1.0) for _ in range(n)]) - - def forward(self, x): - y1 = self.m(self.cv1(x)) - y2 = self.cv2(x) - return self.cv3(torch.cat((y1, y2), dim=1)) - - -class BottleneckCSPB(nn.Module): - # CSP https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=False, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super(BottleneckCSPB, self).__init__() - c_ = int(c2) # hidden channels - self.cv1 = Conv(c1, c_, 1, 1) - self.cv2 = Conv(c_, c_, 1, 1) - self.cv3 = Conv(2 * c_, c2, 1, 1) - self.m = nn.Sequential(*[Bottleneck(c_, c_, shortcut, g, e=1.0) for _ in range(n)]) - - def forward(self, x): - x1 = self.cv1(x) - y1 = self.m(x1) - y2 = self.cv2(x1) - return self.cv3(torch.cat((y1, y2), dim=1)) - - -class BottleneckCSPC(nn.Module): - # CSP https://github.com/WongKinYiu/CrossStagePartialNetworks +class BottleneckCSP(nn.Module): + # CSP Bottleneck https://github.com/WongKinYiu/CrossStagePartialNetworks def __init__(self, c1, c2, n=1, shortcut=True, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super(BottleneckCSPC, self).__init__() + super(BottleneckCSP, self).__init__() c_ = int(c2 * e) # hidden channels self.cv1 = Conv(c1, c_, 1, 1) - self.cv2 = Conv(c1, c_, 1, 1) - self.cv3 = Conv(c_, c_, 1, 1) + self.cv2 = nn.Conv2d(c1, c_, 1, 1, bias=False) + self.cv3 = nn.Conv2d(c_, c_, 1, 1, bias=False) self.cv4 = Conv(2 * c_, c2, 1, 1) + self.bn = nn.BatchNorm2d(2 * c_) # applied to cat(cv2, cv3) + self.act = nn.LeakyReLU(0.1, inplace=True) self.m = nn.Sequential(*[Bottleneck(c_, c_, shortcut, g, e=1.0) for _ in range(n)]) def forward(self, x): y1 = self.cv3(self.m(self.cv1(x))) y2 = self.cv2(x) - return self.cv4(torch.cat((y1, y2), dim=1)) - - -class ResCSPA(BottleneckCSPA): - # CSP https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=True, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super().__init__(c1, c2, n, shortcut, g, e) - c_ = int(c2 * e) # hidden channels - self.m = nn.Sequential(*[Res(c_, c_, shortcut, g, e=0.5) for _ in range(n)]) - + return self.cv4(self.act(self.bn(torch.cat((y1, y2), dim=1)))) -class ResCSPB(BottleneckCSPB): - # CSP https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=True, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super().__init__(c1, c2, n, shortcut, g, e) - c_ = int(c2) # hidden channels - self.m = nn.Sequential(*[Res(c_, c_, shortcut, g, e=0.5) for _ in range(n)]) - - -class ResCSPC(BottleneckCSPC): - # CSP https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=True, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super().__init__(c1, c2, n, shortcut, g, e) - c_ = int(c2 * e) # hidden channels - self.m = nn.Sequential(*[Res(c_, c_, shortcut, g, e=0.5) for _ in range(n)]) - - -class ResXCSPA(ResCSPA): - # CSP https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=True, g=32, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super().__init__(c1, c2, n, shortcut, g, e) - c_ = int(c2 * e) # hidden channels - self.m = nn.Sequential(*[Res(c_, c_, shortcut, g, e=1.0) for _ in range(n)]) - - -class ResXCSPB(ResCSPB): - # CSP https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=True, g=32, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super().__init__(c1, c2, n, shortcut, g, e) - c_ = int(c2) # hidden channels - self.m = nn.Sequential(*[Res(c_, c_, shortcut, g, e=1.0) for _ in range(n)]) - - -class ResXCSPC(ResCSPC): - # CSP https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=True, g=32, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super().__init__(c1, c2, n, shortcut, g, e) - c_ = int(c2 * e) # hidden channels - self.m = nn.Sequential(*[Res(c_, c_, shortcut, g, e=1.0) for _ in range(n)]) - - -class GhostCSPA(BottleneckCSPA): - # CSP https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=True, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super().__init__(c1, c2, n, shortcut, g, e) - c_ = int(c2 * e) # hidden channels - self.m = nn.Sequential(*[Ghost(c_, c_) for _ in range(n)]) - - -class GhostCSPB(BottleneckCSPB): - # CSP https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=True, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super().__init__(c1, c2, n, shortcut, g, e) - c_ = int(c2) # hidden channels - self.m = nn.Sequential(*[Ghost(c_, c_) for _ in range(n)]) - - -class GhostCSPC(BottleneckCSPC): - # CSP https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=True, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super().__init__(c1, c2, n, shortcut, g, e) - c_ = int(c2 * e) # hidden channels - self.m = nn.Sequential(*[Ghost(c_, c_) for _ in range(n)]) -##### end of cspnet ##### - - -##### yolor ##### - -class ImplicitA(nn.Module): - def __init__(self, channel, mean=0., std=.02): - super(ImplicitA, self).__init__() - self.channel = channel - self.mean = mean - self.std = std - self.implicit = nn.Parameter(torch.zeros(1, channel, 1, 1)) - nn.init.normal_(self.implicit, mean=self.mean, std=self.std) - - def forward(self, x): - return self.implicit + x - - -class ImplicitM(nn.Module): - def __init__(self, channel, mean=0., std=.02): - super(ImplicitM, self).__init__() - self.channel = channel - self.mean = mean - self.std = std - self.implicit = nn.Parameter(torch.ones(1, channel, 1, 1)) - nn.init.normal_(self.implicit, mean=self.mean, std=self.std) +class SPP(nn.Module): + # Spatial pyramid pooling layer used in YOLOv3-SPP + def __init__(self, c1, c2, k=(5, 9, 13)): + super(SPP, self).__init__() + c_ = c1 // 2 # hidden channels + self.cv1 = Conv(c1, c_, 1, 1) + self.cv2 = Conv(c_ * (len(k) + 1), c2, 1, 1) + self.m = nn.ModuleList([nn.MaxPool2d(kernel_size=x, stride=1, padding=x // 2) for x in k]) def forward(self, x): - return self.implicit * x - -##### end of yolor ##### - - -##### repvgg ##### - -class RepConv(nn.Module): - # Represented convolution - # https://arxiv.org/abs/2101.03697 - - def __init__(self, c1, c2, k=3, s=1, p=None, g=1, act=True, deploy=False): - super(RepConv, self).__init__() - - self.deploy = deploy - self.groups = g - self.in_channels = c1 - self.out_channels = c2 - - assert k == 3 - assert autopad(k, p) == 1 - - padding_11 = autopad(k, p) - k // 2 - - self.act = nn.SiLU() if act is True else (act if isinstance(act, nn.Module) else nn.Identity()) - - if deploy: - self.rbr_reparam = nn.Conv2d(c1, c2, k, s, autopad(k, p), groups=g, bias=True) - - else: - self.rbr_identity = (nn.BatchNorm2d(num_features=c1) if c2 == c1 and s == 1 else None) - - self.rbr_dense = nn.Sequential( - nn.Conv2d(c1, c2, k, s, autopad(k, p), groups=g, bias=False), - nn.BatchNorm2d(num_features=c2), - ) - - self.rbr_1x1 = nn.Sequential( - nn.Conv2d( c1, c2, 1, s, padding_11, groups=g, bias=False), - nn.BatchNorm2d(num_features=c2), - ) - - def forward(self, inputs): - if hasattr(self, "rbr_reparam"): - return self.act(self.rbr_reparam(inputs)) - - if self.rbr_identity is None: - id_out = 0 - else: - id_out = self.rbr_identity(inputs) - - return self.act(self.rbr_dense(inputs) + self.rbr_1x1(inputs) + id_out) - - def get_equivalent_kernel_bias(self): - kernel3x3, bias3x3 = self._fuse_bn_tensor(self.rbr_dense) - kernel1x1, bias1x1 = self._fuse_bn_tensor(self.rbr_1x1) - kernelid, biasid = self._fuse_bn_tensor(self.rbr_identity) - return ( - kernel3x3 + self._pad_1x1_to_3x3_tensor(kernel1x1) + kernelid, - bias3x3 + bias1x1 + biasid, - ) - - def _pad_1x1_to_3x3_tensor(self, kernel1x1): - if kernel1x1 is None: - return 0 - else: - return nn.functional.pad(kernel1x1, [1, 1, 1, 1]) - - def _fuse_bn_tensor(self, branch): - if branch is None: - return 0, 0 - if isinstance(branch, nn.Sequential): - kernel = branch[0].weight - running_mean = branch[1].running_mean - running_var = branch[1].running_var - gamma = branch[1].weight - beta = branch[1].bias - eps = branch[1].eps - else: - assert isinstance(branch, nn.BatchNorm2d) - if not hasattr(self, "id_tensor"): - input_dim = self.in_channels // self.groups - kernel_value = np.zeros( - (self.in_channels, input_dim, 3, 3), dtype=np.float32 - ) - for i in range(self.in_channels): - kernel_value[i, i % input_dim, 1, 1] = 1 - self.id_tensor = torch.from_numpy(kernel_value).to(branch.weight.device) - kernel = self.id_tensor - running_mean = branch.running_mean - running_var = branch.running_var - gamma = branch.weight - beta = branch.bias - eps = branch.eps - std = (running_var + eps).sqrt() - t = (gamma / std).reshape(-1, 1, 1, 1) - return kernel * t, beta - running_mean * gamma / std - - def repvgg_convert(self): - kernel, bias = self.get_equivalent_kernel_bias() - return ( - kernel.detach().cpu().numpy(), - bias.detach().cpu().numpy(), - ) - - def fuse_conv_bn(self, conv, bn): - - std = (bn.running_var + bn.eps).sqrt() - bias = bn.bias - bn.running_mean * bn.weight / std - - t = (bn.weight / std).reshape(-1, 1, 1, 1) - weights = conv.weight * t - - bn = nn.Identity() - conv = nn.Conv2d(in_channels = conv.in_channels, - out_channels = conv.out_channels, - kernel_size = conv.kernel_size, - stride=conv.stride, - padding = conv.padding, - dilation = conv.dilation, - groups = conv.groups, - bias = True, - padding_mode = conv.padding_mode) - - conv.weight = torch.nn.Parameter(weights) - conv.bias = torch.nn.Parameter(bias) - return conv - - def fuse_repvgg_block(self): - if self.deploy: - return - print(f"RepConv.fuse_repvgg_block") - - self.rbr_dense = self.fuse_conv_bn(self.rbr_dense[0], self.rbr_dense[1]) - - self.rbr_1x1 = self.fuse_conv_bn(self.rbr_1x1[0], self.rbr_1x1[1]) - rbr_1x1_bias = self.rbr_1x1.bias - weight_1x1_expanded = torch.nn.functional.pad(self.rbr_1x1.weight, [1, 1, 1, 1]) - - # Fuse self.rbr_identity - if (isinstance(self.rbr_identity, nn.BatchNorm2d) or isinstance(self.rbr_identity, nn.modules.batchnorm.SyncBatchNorm)): - # print(f"fuse: rbr_identity == BatchNorm2d or SyncBatchNorm") - identity_conv_1x1 = nn.Conv2d( - in_channels=self.in_channels, - out_channels=self.out_channels, - kernel_size=1, - stride=1, - padding=0, - groups=self.groups, - bias=False) - identity_conv_1x1.weight.data = identity_conv_1x1.weight.data.to(self.rbr_1x1.weight.data.device) - identity_conv_1x1.weight.data = identity_conv_1x1.weight.data.squeeze().squeeze() - # print(f" identity_conv_1x1.weight = {identity_conv_1x1.weight.shape}") - identity_conv_1x1.weight.data.fill_(0.0) - identity_conv_1x1.weight.data.fill_diagonal_(1.0) - identity_conv_1x1.weight.data = identity_conv_1x1.weight.data.unsqueeze(2).unsqueeze(3) - # print(f" identity_conv_1x1.weight = {identity_conv_1x1.weight.shape}") - - identity_conv_1x1 = self.fuse_conv_bn(identity_conv_1x1, self.rbr_identity) - bias_identity_expanded = identity_conv_1x1.bias - weight_identity_expanded = torch.nn.functional.pad(identity_conv_1x1.weight, [1, 1, 1, 1]) - else: - # print(f"fuse: rbr_identity != BatchNorm2d, rbr_identity = {self.rbr_identity}") - bias_identity_expanded = torch.nn.Parameter( torch.zeros_like(rbr_1x1_bias) ) - weight_identity_expanded = torch.nn.Parameter( torch.zeros_like(weight_1x1_expanded) ) - - - #print(f"self.rbr_1x1.weight = {self.rbr_1x1.weight.shape}, ") - #print(f"weight_1x1_expanded = {weight_1x1_expanded.shape}, ") - #print(f"self.rbr_dense.weight = {self.rbr_dense.weight.shape}, ") - - self.rbr_dense.weight = torch.nn.Parameter(self.rbr_dense.weight + weight_1x1_expanded + weight_identity_expanded) - self.rbr_dense.bias = torch.nn.Parameter(self.rbr_dense.bias + rbr_1x1_bias + bias_identity_expanded) - - self.rbr_reparam = self.rbr_dense - self.deploy = True - - if self.rbr_identity is not None: - del self.rbr_identity - self.rbr_identity = None - - if self.rbr_1x1 is not None: - del self.rbr_1x1 - self.rbr_1x1 = None - - if self.rbr_dense is not None: - del self.rbr_dense - self.rbr_dense = None - - -class RepBottleneck(Bottleneck): - # Standard bottleneck - def __init__(self, c1, c2, shortcut=True, g=1, e=0.5): # ch_in, ch_out, shortcut, groups, expansion - super().__init__(c1, c2, shortcut=True, g=1, e=0.5) - c_ = int(c2 * e) # hidden channels - self.cv2 = RepConv(c_, c2, 3, 1, g=g) - - -class RepBottleneckCSPA(BottleneckCSPA): - # CSP Bottleneck https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=True, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super().__init__(c1, c2, n, shortcut, g, e) - c_ = int(c2 * e) # hidden channels - self.m = nn.Sequential(*[RepBottleneck(c_, c_, shortcut, g, e=1.0) for _ in range(n)]) - - -class RepBottleneckCSPB(BottleneckCSPB): - # CSP Bottleneck https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=False, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super().__init__(c1, c2, n, shortcut, g, e) - c_ = int(c2) # hidden channels - self.m = nn.Sequential(*[RepBottleneck(c_, c_, shortcut, g, e=1.0) for _ in range(n)]) - - -class RepBottleneckCSPC(BottleneckCSPC): - # CSP Bottleneck https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=True, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super().__init__(c1, c2, n, shortcut, g, e) - c_ = int(c2 * e) # hidden channels - self.m = nn.Sequential(*[RepBottleneck(c_, c_, shortcut, g, e=1.0) for _ in range(n)]) - - -class RepRes(Res): - # Standard bottleneck - def __init__(self, c1, c2, shortcut=True, g=1, e=0.5): # ch_in, ch_out, shortcut, groups, expansion - super().__init__(c1, c2, shortcut, g, e) - c_ = int(c2 * e) # hidden channels - self.cv2 = RepConv(c_, c_, 3, 1, g=g) - - -class RepResCSPA(ResCSPA): - # CSP Bottleneck https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=True, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super().__init__(c1, c2, n, shortcut, g, e) - c_ = int(c2 * e) # hidden channels - self.m = nn.Sequential(*[RepRes(c_, c_, shortcut, g, e=0.5) for _ in range(n)]) - + x = self.cv1(x) + return self.cv2(torch.cat([x] + [m(x) for m in self.m], 1)) -class RepResCSPB(ResCSPB): - # CSP Bottleneck https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=False, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super().__init__(c1, c2, n, shortcut, g, e) - c_ = int(c2) # hidden channels - self.m = nn.Sequential(*[RepRes(c_, c_, shortcut, g, e=0.5) for _ in range(n)]) +class Focus(nn.Module): + # Focus wh information into c-space + def __init__(self, c1, c2, k=1, s=1, p=None, g=1, act=True): # ch_in, ch_out, kernel, stride, padding, groups + super(Focus, self).__init__() + self.conv = Conv(c1 * 4, c2, k, s, p, g, act) -class RepResCSPC(ResCSPC): - # CSP Bottleneck https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=True, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super().__init__(c1, c2, n, shortcut, g, e) - c_ = int(c2 * e) # hidden channels - self.m = nn.Sequential(*[RepRes(c_, c_, shortcut, g, e=0.5) for _ in range(n)]) + def forward(self, x): # x(b,c,w,h) -> y(b,4c,w/2,h/2) + return self.conv(torch.cat([x[..., ::2, ::2], x[..., 1::2, ::2], x[..., ::2, 1::2], x[..., 1::2, 1::2]], 1)) -class RepResX(ResX): - # Standard bottleneck - def __init__(self, c1, c2, shortcut=True, g=32, e=0.5): # ch_in, ch_out, shortcut, groups, expansion - super().__init__(c1, c2, shortcut, g, e) - c_ = int(c2 * e) # hidden channels - self.cv2 = RepConv(c_, c_, 3, 1, g=g) +class Concat(nn.Module): + # Concatenate a list of tensors along dimension + def __init__(self, dimension=1): + super(Concat, self).__init__() + self.d = dimension + def forward(self, x): + return torch.cat(x, self.d) -class RepResXCSPA(ResXCSPA): - # CSP Bottleneck https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=True, g=32, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super().__init__(c1, c2, n, shortcut, g, e) - c_ = int(c2 * e) # hidden channels - self.m = nn.Sequential(*[RepResX(c_, c_, shortcut, g, e=0.5) for _ in range(n)]) +class Flatten(nn.Module): + # Use after nn.AdaptiveAvgPool2d(1) to remove last 2 dimensions + @staticmethod + def forward(x): + return x.view(x.size(0), -1) -class RepResXCSPB(ResXCSPB): - # CSP Bottleneck https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=False, g=32, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super().__init__(c1, c2, n, shortcut, g, e) - c_ = int(c2) # hidden channels - self.m = nn.Sequential(*[RepResX(c_, c_, shortcut, g, e=0.5) for _ in range(n)]) - -class RepResXCSPC(ResXCSPC): - # CSP Bottleneck https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=True, g=32, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super().__init__(c1, c2, n, shortcut, g, e) - c_ = int(c2 * e) # hidden channels - self.m = nn.Sequential(*[RepResX(c_, c_, shortcut, g, e=0.5) for _ in range(n)]) - -##### end of repvgg ##### - - -##### transformer ##### - -class TransformerLayer(nn.Module): - # Transformer layer https://arxiv.org/abs/2010.11929 (LayerNorm layers removed for better performance) - def __init__(self, c, num_heads): - super().__init__() - self.q = nn.Linear(c, c, bias=False) - self.k = nn.Linear(c, c, bias=False) - self.v = nn.Linear(c, c, bias=False) - self.ma = nn.MultiheadAttention(embed_dim=c, num_heads=num_heads) - self.fc1 = nn.Linear(c, c, bias=False) - self.fc2 = nn.Linear(c, c, bias=False) - - def forward(self, x): - x = self.ma(self.q(x), self.k(x), self.v(x))[0] + x - x = self.fc2(self.fc1(x)) + x - return x - - -class TransformerBlock(nn.Module): - # Vision Transformer https://arxiv.org/abs/2010.11929 - def __init__(self, c1, c2, num_heads, num_layers): - super().__init__() - self.conv = None - if c1 != c2: - self.conv = Conv(c1, c2) - self.linear = nn.Linear(c2, c2) # learnable position embedding - self.tr = nn.Sequential(*[TransformerLayer(c2, num_heads) for _ in range(num_layers)]) - self.c2 = c2 - - def forward(self, x): - if self.conv is not None: - x = self.conv(x) - b, _, w, h = x.shape - p = x.flatten(2) - p = p.unsqueeze(0) - p = p.transpose(0, 3) - p = p.squeeze(3) - e = self.linear(p) - x = p + e - - x = self.tr(x) - x = x.unsqueeze(3) - x = x.transpose(0, 3) - x = x.reshape(b, self.c2, w, h) - return x - -##### end of transformer ##### - - -##### yolov5 ##### - -class Focus(nn.Module): - # Focus wh information into c-space - def __init__(self, c1, c2, k=1, s=1, p=None, g=1, act=True): # ch_in, ch_out, kernel, stride, padding, groups - super(Focus, self).__init__() - self.conv = Conv(c1 * 4, c2, k, s, p, g, act) - # self.contract = Contract(gain=2) - - def forward(self, x): # x(b,c,w,h) -> y(b,4c,w/2,h/2) - return self.conv(torch.cat([x[..., ::2, ::2], x[..., 1::2, ::2], x[..., ::2, 1::2], x[..., 1::2, 1::2]], 1)) - # return self.conv(self.contract(x)) - - -class SPPF(nn.Module): - # Spatial Pyramid Pooling - Fast (SPPF) layer for YOLOv5 by Glenn Jocher - def __init__(self, c1, c2, k=5): # equivalent to SPP(k=(5, 9, 13)) - super().__init__() - c_ = c1 // 2 # hidden channels - self.cv1 = Conv(c1, c_, 1, 1) - self.cv2 = Conv(c_ * 4, c2, 1, 1) - self.m = nn.MaxPool2d(kernel_size=k, stride=1, padding=k // 2) - - def forward(self, x): - x = self.cv1(x) - y1 = self.m(x) - y2 = self.m(y1) - return self.cv2(torch.cat([x, y1, y2, self.m(y2)], 1)) - - -class Contract(nn.Module): - # Contract width-height into channels, i.e. x(1,64,80,80) to x(1,256,40,40) - def __init__(self, gain=2): - super().__init__() - self.gain = gain - - def forward(self, x): - N, C, H, W = x.size() # assert (H / s == 0) and (W / s == 0), 'Indivisible gain' - s = self.gain - x = x.view(N, C, H // s, s, W // s, s) # x(1,64,40,2,40,2) - x = x.permute(0, 3, 5, 1, 2, 4).contiguous() # x(1,2,2,64,40,40) - return x.view(N, C * s * s, H // s, W // s) # x(1,256,40,40) - - -class Expand(nn.Module): - # Expand channels into width-height, i.e. x(1,64,80,80) to x(1,16,160,160) - def __init__(self, gain=2): - super().__init__() - self.gain = gain - - def forward(self, x): - N, C, H, W = x.size() # assert C / s ** 2 == 0, 'Indivisible gain' - s = self.gain - x = x.view(N, s, s, C // s ** 2, H, W) # x(1,2,2,16,80,80) - x = x.permute(0, 3, 4, 1, 5, 2).contiguous() # x(1,16,80,2,80,2) - return x.view(N, C // s ** 2, H * s, W * s) # x(1,16,160,160) - - -class NMS(nn.Module): - # Non-Maximum Suppression (NMS) module - conf = 0.25 # confidence threshold - iou = 0.45 # IoU threshold - classes = None # (optional list) filter by class - - def __init__(self): - super(NMS, self).__init__() - - def forward(self, x): - return non_max_suppression(x[0], conf_thres=self.conf, iou_thres=self.iou, classes=self.classes) - - -class autoShape(nn.Module): - # input-robust model wrapper for passing cv2/np/PIL/torch inputs. Includes preprocessing, inference and NMS - conf = 0.25 # NMS confidence threshold - iou = 0.45 # NMS IoU threshold - classes = None # (optional list) filter by class - - def __init__(self, model): - super(autoShape, self).__init__() - self.model = model.eval() - - def autoshape(self): - print('autoShape already enabled, skipping... ') # model already converted to model.autoshape() - return self - - @torch.no_grad() - def forward(self, imgs, size=640, augment=False, profile=False): - # Inference from various sources. For height=640, width=1280, RGB images example inputs are: - # filename: imgs = 'data/samples/zidane.jpg' - # URI: = 'https://github.com/ultralytics/yolov5/releases/download/v1.0/zidane.jpg' - # OpenCV: = cv2.imread('image.jpg')[:,:,::-1] # HWC BGR to RGB x(640,1280,3) - # PIL: = Image.open('image.jpg') # HWC x(640,1280,3) - # numpy: = np.zeros((640,1280,3)) # HWC - # torch: = torch.zeros(16,3,320,640) # BCHW (scaled to size=640, 0-1 values) - # multiple: = [Image.open('image1.jpg'), Image.open('image2.jpg'), ...] # list of images - - t = [time_synchronized()] - p = next(self.model.parameters()) # for device and type - if isinstance(imgs, torch.Tensor): # torch - with amp.autocast(enabled=p.device.type != 'cpu'): - return self.model(imgs.to(p.device).type_as(p), augment, profile) # inference - - # Pre-process - n, imgs = (len(imgs), imgs) if isinstance(imgs, list) else (1, [imgs]) # number of images, list of images - shape0, shape1, files = [], [], [] # image and inference shapes, filenames - for i, im in enumerate(imgs): - f = f'image{i}' # filename - if isinstance(im, str): # filename or uri - im, f = np.asarray(Image.open(requests.get(im, stream=True).raw if im.startswith('http') else im)), im - elif isinstance(im, Image.Image): # PIL Image - im, f = np.asarray(im), getattr(im, 'filename', f) or f - files.append(Path(f).with_suffix('.jpg').name) - if im.shape[0] < 5: # image in CHW - im = im.transpose((1, 2, 0)) # reverse dataloader .transpose(2, 0, 1) - im = im[:, :, :3] if im.ndim == 3 else np.tile(im[:, :, None], 3) # enforce 3ch input - s = im.shape[:2] # HWC - shape0.append(s) # image shape - g = (size / max(s)) # gain - shape1.append([y * g for y in s]) - imgs[i] = im # update - shape1 = [make_divisible(x, int(self.stride.max())) for x in np.stack(shape1, 0).max(0)] # inference shape - x = [letterbox(im, new_shape=shape1, auto=False)[0] for im in imgs] # pad - x = np.stack(x, 0) if n > 1 else x[0][None] # stack - x = np.ascontiguousarray(x.transpose((0, 3, 1, 2))) # BHWC to BCHW - x = torch.from_numpy(x).to(p.device).type_as(p) / 255. # uint8 to fp16/32 - t.append(time_synchronized()) - - with amp.autocast(enabled=p.device.type != 'cpu'): - # Inference - y = self.model(x, augment, profile)[0] # forward - t.append(time_synchronized()) - - # Post-process - y = non_max_suppression(y, conf_thres=self.conf, iou_thres=self.iou, classes=self.classes) # NMS - for i in range(n): - scale_coords(shape1, y[i][:, :4], shape0[i]) - - t.append(time_synchronized()) - return Detections(imgs, y, files, t, self.names, x.shape) - - -class Detections: - # detections class for YOLOv5 inference results - def __init__(self, imgs, pred, files, times=None, names=None, shape=None): - super(Detections, self).__init__() - d = pred[0].device # device - gn = [torch.tensor([*[im.shape[i] for i in [1, 0, 1, 0]], 1., 1.], device=d) for im in imgs] # normalizations - self.imgs = imgs # list of images as numpy arrays - self.pred = pred # list of tensors pred[0] = (xyxy, conf, cls) - self.names = names # class names - self.files = files # image filenames - self.xyxy = pred # xyxy pixels - self.xywh = [xyxy2xywh(x) for x in pred] # xywh pixels - self.xyxyn = [x / g for x, g in zip(self.xyxy, gn)] # xyxy normalized - self.xywhn = [x / g for x, g in zip(self.xywh, gn)] # xywh normalized - self.n = len(self.pred) # number of images (batch size) - self.t = tuple((times[i + 1] - times[i]) * 1000 / self.n for i in range(3)) # timestamps (ms) - self.s = shape # inference BCHW shape - - def display(self, pprint=False, show=False, save=False, render=False, save_dir=''): - colors = color_list() - for i, (img, pred) in enumerate(zip(self.imgs, self.pred)): - str = f'image {i + 1}/{len(self.pred)}: {img.shape[0]}x{img.shape[1]} ' - if pred is not None: - for c in pred[:, -1].unique(): - n = (pred[:, -1] == c).sum() # detections per class - str += f"{n} {self.names[int(c)]}{'s' * (n > 1)}, " # add to string - if show or save or render: - for *box, conf, cls in pred: # xyxy, confidence, class - label = f'{self.names[int(cls)]} {conf:.2f}' - plot_one_box(box, img, label=label, color=colors[int(cls) % 10]) - img = Image.fromarray(img.astype(np.uint8)) if isinstance(img, np.ndarray) else img # from np - if pprint: - print(str.rstrip(', ')) - if show: - img.show(self.files[i]) # show - if save: - f = self.files[i] - img.save(Path(save_dir) / f) # save - print(f"{'Saved' * (i == 0)} {f}", end=',' if i < self.n - 1 else f' to {save_dir}\n') - if render: - self.imgs[i] = np.asarray(img) - - def print(self): - self.display(pprint=True) # print results - print(f'Speed: %.1fms pre-process, %.1fms inference, %.1fms NMS per image at shape {tuple(self.s)}' % self.t) - - def show(self): - self.display(show=True) # show results - - def save(self, save_dir='runs/hub/exp'): - save_dir = increment_path(save_dir, exist_ok=save_dir != 'runs/hub/exp') # increment save_dir - Path(save_dir).mkdir(parents=True, exist_ok=True) - self.display(save=True, save_dir=save_dir) # save results - - def render(self): - self.display(render=True) # render results - return self.imgs - - def pandas(self): - # return detections as pandas DataFrames, i.e. print(results.pandas().xyxy[0]) - new = copy(self) # return copy - ca = 'xmin', 'ymin', 'xmax', 'ymax', 'confidence', 'class', 'name' # xyxy columns - cb = 'xcenter', 'ycenter', 'width', 'height', 'confidence', 'class', 'name' # xywh columns - for k, c in zip(['xyxy', 'xyxyn', 'xywh', 'xywhn'], [ca, ca, cb, cb]): - a = [[x[:5] + [int(x[5]), self.names[int(x[5])]] for x in x.tolist()] for x in getattr(self, k)] # update - setattr(new, k, [pd.DataFrame(x, columns=c) for x in a]) - return new - - def tolist(self): - # return a list of Detections objects, i.e. 'for result in results.tolist():' - x = [Detections([self.imgs[i]], [self.pred[i]], self.names, self.s) for i in range(self.n)] - for d in x: - for k in ['imgs', 'pred', 'xyxy', 'xyxyn', 'xywh', 'xywhn']: - setattr(d, k, getattr(d, k)[0]) # pop out of list - return x - - def __len__(self): - return self.n - - -class Classify(nn.Module): - # Classification head, i.e. x(b,c1,20,20) to x(b,c2) - def __init__(self, c1, c2, k=1, s=1, p=None, g=1): # ch_in, ch_out, kernel, stride, padding, groups - super(Classify, self).__init__() - self.aap = nn.AdaptiveAvgPool2d(1) # to x(b,c1,1,1) - self.conv = nn.Conv2d(c1, c2, k, s, autopad(k, p), groups=g) # to x(b,c2,1,1) - self.flat = nn.Flatten() +class Classify(nn.Module): + # Classification head, i.e. x(b,c1,20,20) to x(b,c2) + def __init__(self, c1, c2, k=1, s=1, p=None, g=1): # ch_in, ch_out, kernel, stride, padding, groups + super(Classify, self).__init__() + self.aap = nn.AdaptiveAvgPool2d(1) # to x(b,c1,1,1) + self.conv = nn.Conv2d(c1, c2, k, s, autopad(k, p), groups=g, bias=False) # to x(b,c2,1,1) + self.flat = Flatten() def forward(self, x): z = torch.cat([self.aap(y) for y in (x if isinstance(x, list) else [x])], 1) # cat if list return self.flat(self.conv(z)) # flatten to x(b,c2) - -##### end of yolov5 ###### - - -##### orepa ##### - -def transI_fusebn(kernel, bn): - gamma = bn.weight - std = (bn.running_var + bn.eps).sqrt() - return kernel * ((gamma / std).reshape(-1, 1, 1, 1)), bn.bias - bn.running_mean * gamma / std - - -class ConvBN(nn.Module): - def __init__(self, in_channels, out_channels, kernel_size, - stride=1, padding=0, dilation=1, groups=1, deploy=False, nonlinear=None): - super().__init__() - if nonlinear is None: - self.nonlinear = nn.Identity() - else: - self.nonlinear = nonlinear - if deploy: - self.conv = nn.Conv2d(in_channels=in_channels, out_channels=out_channels, kernel_size=kernel_size, - stride=stride, padding=padding, dilation=dilation, groups=groups, bias=True) - else: - self.conv = nn.Conv2d(in_channels=in_channels, out_channels=out_channels, kernel_size=kernel_size, - stride=stride, padding=padding, dilation=dilation, groups=groups, bias=False) - self.bn = nn.BatchNorm2d(num_features=out_channels) - - def forward(self, x): - if hasattr(self, 'bn'): - return self.nonlinear(self.bn(self.conv(x))) - else: - return self.nonlinear(self.conv(x)) - - def switch_to_deploy(self): - kernel, bias = transI_fusebn(self.conv.weight, self.bn) - conv = nn.Conv2d(in_channels=self.conv.in_channels, out_channels=self.conv.out_channels, kernel_size=self.conv.kernel_size, - stride=self.conv.stride, padding=self.conv.padding, dilation=self.conv.dilation, groups=self.conv.groups, bias=True) - conv.weight.data = kernel - conv.bias.data = bias - for para in self.parameters(): - para.detach_() - self.__delattr__('conv') - self.__delattr__('bn') - self.conv = conv - -class OREPA_3x3_RepConv(nn.Module): - - def __init__(self, in_channels, out_channels, kernel_size, - stride=1, padding=0, dilation=1, groups=1, - internal_channels_1x1_3x3=None, - deploy=False, nonlinear=None, single_init=False): - super(OREPA_3x3_RepConv, self).__init__() - self.deploy = deploy - - if nonlinear is None: - self.nonlinear = nn.Identity() - else: - self.nonlinear = nonlinear - - self.kernel_size = kernel_size - self.in_channels = in_channels - self.out_channels = out_channels - self.groups = groups - assert padding == kernel_size // 2 - - self.stride = stride - self.padding = padding - self.dilation = dilation - - self.branch_counter = 0 - - self.weight_rbr_origin = nn.Parameter(torch.Tensor(out_channels, int(in_channels/self.groups), kernel_size, kernel_size)) - nn.init.kaiming_uniform_(self.weight_rbr_origin, a=math.sqrt(1.0)) - self.branch_counter += 1 - - - if groups < out_channels: - self.weight_rbr_avg_conv = nn.Parameter(torch.Tensor(out_channels, int(in_channels/self.groups), 1, 1)) - self.weight_rbr_pfir_conv = nn.Parameter(torch.Tensor(out_channels, int(in_channels/self.groups), 1, 1)) - nn.init.kaiming_uniform_(self.weight_rbr_avg_conv, a=1.0) - nn.init.kaiming_uniform_(self.weight_rbr_pfir_conv, a=1.0) - self.weight_rbr_avg_conv.data - self.weight_rbr_pfir_conv.data - self.register_buffer('weight_rbr_avg_avg', torch.ones(kernel_size, kernel_size).mul(1.0/kernel_size/kernel_size)) - self.branch_counter += 1 - - else: - raise NotImplementedError - self.branch_counter += 1 - - if internal_channels_1x1_3x3 is None: - internal_channels_1x1_3x3 = in_channels if groups < out_channels else 2 * in_channels # For mobilenet, it is better to have 2X internal channels - - if internal_channels_1x1_3x3 == in_channels: - self.weight_rbr_1x1_kxk_idconv1 = nn.Parameter(torch.zeros(in_channels, int(in_channels/self.groups), 1, 1)) - id_value = np.zeros((in_channels, int(in_channels/self.groups), 1, 1)) - for i in range(in_channels): - id_value[i, i % int(in_channels/self.groups), 0, 0] = 1 - id_tensor = torch.from_numpy(id_value).type_as(self.weight_rbr_1x1_kxk_idconv1) - self.register_buffer('id_tensor', id_tensor) - - else: - self.weight_rbr_1x1_kxk_conv1 = nn.Parameter(torch.Tensor(internal_channels_1x1_3x3, int(in_channels/self.groups), 1, 1)) - nn.init.kaiming_uniform_(self.weight_rbr_1x1_kxk_conv1, a=math.sqrt(1.0)) - self.weight_rbr_1x1_kxk_conv2 = nn.Parameter(torch.Tensor(out_channels, int(internal_channels_1x1_3x3/self.groups), kernel_size, kernel_size)) - nn.init.kaiming_uniform_(self.weight_rbr_1x1_kxk_conv2, a=math.sqrt(1.0)) - self.branch_counter += 1 - - expand_ratio = 8 - self.weight_rbr_gconv_dw = nn.Parameter(torch.Tensor(in_channels*expand_ratio, 1, kernel_size, kernel_size)) - self.weight_rbr_gconv_pw = nn.Parameter(torch.Tensor(out_channels, in_channels*expand_ratio, 1, 1)) - nn.init.kaiming_uniform_(self.weight_rbr_gconv_dw, a=math.sqrt(1.0)) - nn.init.kaiming_uniform_(self.weight_rbr_gconv_pw, a=math.sqrt(1.0)) - self.branch_counter += 1 - - if out_channels == in_channels and stride == 1: - self.branch_counter += 1 - - self.vector = nn.Parameter(torch.Tensor(self.branch_counter, self.out_channels)) - self.bn = nn.BatchNorm2d(out_channels) - - self.fre_init() - - nn.init.constant_(self.vector[0, :], 0.25) #origin - nn.init.constant_(self.vector[1, :], 0.25) #avg - nn.init.constant_(self.vector[2, :], 0.0) #prior - nn.init.constant_(self.vector[3, :], 0.5) #1x1_kxk - nn.init.constant_(self.vector[4, :], 0.5) #dws_conv - - - def fre_init(self): - prior_tensor = torch.Tensor(self.out_channels, self.kernel_size, self.kernel_size) - half_fg = self.out_channels/2 - for i in range(self.out_channels): - for h in range(3): - for w in range(3): - if i < half_fg: - prior_tensor[i, h, w] = math.cos(math.pi*(h+0.5)*(i+1)/3) - else: - prior_tensor[i, h, w] = math.cos(math.pi*(w+0.5)*(i+1-half_fg)/3) - - self.register_buffer('weight_rbr_prior', prior_tensor) - - def weight_gen(self): - - weight_rbr_origin = torch.einsum('oihw,o->oihw', self.weight_rbr_origin, self.vector[0, :]) - - weight_rbr_avg = torch.einsum('oihw,o->oihw', torch.einsum('oihw,hw->oihw', self.weight_rbr_avg_conv, self.weight_rbr_avg_avg), self.vector[1, :]) - - weight_rbr_pfir = torch.einsum('oihw,o->oihw', torch.einsum('oihw,ohw->oihw', self.weight_rbr_pfir_conv, self.weight_rbr_prior), self.vector[2, :]) - - weight_rbr_1x1_kxk_conv1 = None - if hasattr(self, 'weight_rbr_1x1_kxk_idconv1'): - weight_rbr_1x1_kxk_conv1 = (self.weight_rbr_1x1_kxk_idconv1 + self.id_tensor).squeeze() - elif hasattr(self, 'weight_rbr_1x1_kxk_conv1'): - weight_rbr_1x1_kxk_conv1 = self.weight_rbr_1x1_kxk_conv1.squeeze() - else: - raise NotImplementedError - weight_rbr_1x1_kxk_conv2 = self.weight_rbr_1x1_kxk_conv2 - - if self.groups > 1: - g = self.groups - t, ig = weight_rbr_1x1_kxk_conv1.size() - o, tg, h, w = weight_rbr_1x1_kxk_conv2.size() - weight_rbr_1x1_kxk_conv1 = weight_rbr_1x1_kxk_conv1.view(g, int(t/g), ig) - weight_rbr_1x1_kxk_conv2 = weight_rbr_1x1_kxk_conv2.view(g, int(o/g), tg, h, w) - weight_rbr_1x1_kxk = torch.einsum('gti,gothw->goihw', weight_rbr_1x1_kxk_conv1, weight_rbr_1x1_kxk_conv2).view(o, ig, h, w) - else: - weight_rbr_1x1_kxk = torch.einsum('ti,othw->oihw', weight_rbr_1x1_kxk_conv1, weight_rbr_1x1_kxk_conv2) - - weight_rbr_1x1_kxk = torch.einsum('oihw,o->oihw', weight_rbr_1x1_kxk, self.vector[3, :]) - - weight_rbr_gconv = self.dwsc2full(self.weight_rbr_gconv_dw, self.weight_rbr_gconv_pw, self.in_channels) - weight_rbr_gconv = torch.einsum('oihw,o->oihw', weight_rbr_gconv, self.vector[4, :]) - - weight = weight_rbr_origin + weight_rbr_avg + weight_rbr_1x1_kxk + weight_rbr_pfir + weight_rbr_gconv - - return weight - - def dwsc2full(self, weight_dw, weight_pw, groups): - - t, ig, h, w = weight_dw.size() - o, _, _, _ = weight_pw.size() - tg = int(t/groups) - i = int(ig*groups) - weight_dw = weight_dw.view(groups, tg, ig, h, w) - weight_pw = weight_pw.squeeze().view(o, groups, tg) - - weight_dsc = torch.einsum('gtihw,ogt->ogihw', weight_dw, weight_pw) - return weight_dsc.view(o, i, h, w) - - def forward(self, inputs): - weight = self.weight_gen() - out = F.conv2d(inputs, weight, bias=None, stride=self.stride, padding=self.padding, dilation=self.dilation, groups=self.groups) - - return self.nonlinear(self.bn(out)) - -class RepConv_OREPA(nn.Module): - - def __init__(self, c1, c2, k=3, s=1, padding=1, dilation=1, groups=1, padding_mode='zeros', deploy=False, use_se=False, nonlinear=nn.SiLU()): - super(RepConv_OREPA, self).__init__() - self.deploy = deploy - self.groups = groups - self.in_channels = c1 - self.out_channels = c2 - - self.padding = padding - self.dilation = dilation - self.groups = groups - - assert k == 3 - assert padding == 1 - - padding_11 = padding - k // 2 - - if nonlinear is None: - self.nonlinearity = nn.Identity() - else: - self.nonlinearity = nonlinear - - if use_se: - self.se = SEBlock(self.out_channels, internal_neurons=self.out_channels // 16) - else: - self.se = nn.Identity() - - if deploy: - self.rbr_reparam = nn.Conv2d(in_channels=self.in_channels, out_channels=self.out_channels, kernel_size=k, stride=s, - padding=padding, dilation=dilation, groups=groups, bias=True, padding_mode=padding_mode) - - else: - self.rbr_identity = nn.BatchNorm2d(num_features=self.in_channels) if self.out_channels == self.in_channels and s == 1 else None - self.rbr_dense = OREPA_3x3_RepConv(in_channels=self.in_channels, out_channels=self.out_channels, kernel_size=k, stride=s, padding=padding, groups=groups, dilation=1) - self.rbr_1x1 = ConvBN(in_channels=self.in_channels, out_channels=self.out_channels, kernel_size=1, stride=s, padding=padding_11, groups=groups, dilation=1) - print('RepVGG Block, identity = ', self.rbr_identity) - - - def forward(self, inputs): - if hasattr(self, 'rbr_reparam'): - return self.nonlinearity(self.se(self.rbr_reparam(inputs))) - - if self.rbr_identity is None: - id_out = 0 - else: - id_out = self.rbr_identity(inputs) - - out1 = self.rbr_dense(inputs) - out2 = self.rbr_1x1(inputs) - out3 = id_out - out = out1 + out2 + out3 - - return self.nonlinearity(self.se(out)) - - - # Optional. This improves the accuracy and facilitates quantization. - # 1. Cancel the original weight decay on rbr_dense.conv.weight and rbr_1x1.conv.weight. - # 2. Use like this. - # loss = criterion(....) - # for every RepVGGBlock blk: - # loss += weight_decay_coefficient * 0.5 * blk.get_cust_L2() - # optimizer.zero_grad() - # loss.backward() - - # Not used for OREPA - def get_custom_L2(self): - K3 = self.rbr_dense.weight_gen() - K1 = self.rbr_1x1.conv.weight - t3 = (self.rbr_dense.bn.weight / ((self.rbr_dense.bn.running_var + self.rbr_dense.bn.eps).sqrt())).reshape(-1, 1, 1, 1).detach() - t1 = (self.rbr_1x1.bn.weight / ((self.rbr_1x1.bn.running_var + self.rbr_1x1.bn.eps).sqrt())).reshape(-1, 1, 1, 1).detach() - - l2_loss_circle = (K3 ** 2).sum() - (K3[:, :, 1:2, 1:2] ** 2).sum() # The L2 loss of the "circle" of weights in 3x3 kernel. Use regular L2 on them. - eq_kernel = K3[:, :, 1:2, 1:2] * t3 + K1 * t1 # The equivalent resultant central point of 3x3 kernel. - l2_loss_eq_kernel = (eq_kernel ** 2 / (t3 ** 2 + t1 ** 2)).sum() # Normalize for an L2 coefficient comparable to regular L2. - return l2_loss_eq_kernel + l2_loss_circle - - def get_equivalent_kernel_bias(self): - kernel3x3, bias3x3 = self._fuse_bn_tensor(self.rbr_dense) - kernel1x1, bias1x1 = self._fuse_bn_tensor(self.rbr_1x1) - kernelid, biasid = self._fuse_bn_tensor(self.rbr_identity) - return kernel3x3 + self._pad_1x1_to_3x3_tensor(kernel1x1) + kernelid, bias3x3 + bias1x1 + biasid - - def _pad_1x1_to_3x3_tensor(self, kernel1x1): - if kernel1x1 is None: - return 0 - else: - return torch.nn.functional.pad(kernel1x1, [1,1,1,1]) - - def _fuse_bn_tensor(self, branch): - if branch is None: - return 0, 0 - if not isinstance(branch, nn.BatchNorm2d): - if isinstance(branch, OREPA_3x3_RepConv): - kernel = branch.weight_gen() - elif isinstance(branch, ConvBN): - kernel = branch.conv.weight - else: - raise NotImplementedError - running_mean = branch.bn.running_mean - running_var = branch.bn.running_var - gamma = branch.bn.weight - beta = branch.bn.bias - eps = branch.bn.eps - else: - if not hasattr(self, 'id_tensor'): - input_dim = self.in_channels // self.groups - kernel_value = np.zeros((self.in_channels, input_dim, 3, 3), dtype=np.float32) - for i in range(self.in_channels): - kernel_value[i, i % input_dim, 1, 1] = 1 - self.id_tensor = torch.from_numpy(kernel_value).to(branch.weight.device) - kernel = self.id_tensor - running_mean = branch.running_mean - running_var = branch.running_var - gamma = branch.weight - beta = branch.bias - eps = branch.eps - std = (running_var + eps).sqrt() - t = (gamma / std).reshape(-1, 1, 1, 1) - return kernel * t, beta - running_mean * gamma / std - - def switch_to_deploy(self): - if hasattr(self, 'rbr_reparam'): - return - print(f"RepConv_OREPA.switch_to_deploy") - kernel, bias = self.get_equivalent_kernel_bias() - self.rbr_reparam = nn.Conv2d(in_channels=self.rbr_dense.in_channels, out_channels=self.rbr_dense.out_channels, - kernel_size=self.rbr_dense.kernel_size, stride=self.rbr_dense.stride, - padding=self.rbr_dense.padding, dilation=self.rbr_dense.dilation, groups=self.rbr_dense.groups, bias=True) - self.rbr_reparam.weight.data = kernel - self.rbr_reparam.bias.data = bias - for para in self.parameters(): - para.detach_() - self.__delattr__('rbr_dense') - self.__delattr__('rbr_1x1') - if hasattr(self, 'rbr_identity'): - self.__delattr__('rbr_identity') - -##### end of orepa ##### - - -##### swin transformer ##### - -class WindowAttention(nn.Module): - - def __init__(self, dim, window_size, num_heads, qkv_bias=True, qk_scale=None, attn_drop=0., proj_drop=0.): - - super().__init__() - self.dim = dim - self.window_size = window_size # Wh, Ww - self.num_heads = num_heads - head_dim = dim // num_heads - self.scale = qk_scale or head_dim ** -0.5 - - # define a parameter table of relative position bias - self.relative_position_bias_table = nn.Parameter( - torch.zeros((2 * window_size[0] - 1) * (2 * window_size[1] - 1), num_heads)) # 2*Wh-1 * 2*Ww-1, nH - - # get pair-wise relative position index for each token inside the window - coords_h = torch.arange(self.window_size[0]) - coords_w = torch.arange(self.window_size[1]) - coords = torch.stack(torch.meshgrid([coords_h, coords_w])) # 2, Wh, Ww - coords_flatten = torch.flatten(coords, 1) # 2, Wh*Ww - relative_coords = coords_flatten[:, :, None] - coords_flatten[:, None, :] # 2, Wh*Ww, Wh*Ww - relative_coords = relative_coords.permute(1, 2, 0).contiguous() # Wh*Ww, Wh*Ww, 2 - relative_coords[:, :, 0] += self.window_size[0] - 1 # shift to start from 0 - relative_coords[:, :, 1] += self.window_size[1] - 1 - relative_coords[:, :, 0] *= 2 * self.window_size[1] - 1 - relative_position_index = relative_coords.sum(-1) # Wh*Ww, Wh*Ww - self.register_buffer("relative_position_index", relative_position_index) - - self.qkv = nn.Linear(dim, dim * 3, bias=qkv_bias) - self.attn_drop = nn.Dropout(attn_drop) - self.proj = nn.Linear(dim, dim) - self.proj_drop = nn.Dropout(proj_drop) - - nn.init.normal_(self.relative_position_bias_table, std=.02) - self.softmax = nn.Softmax(dim=-1) - - def forward(self, x, mask=None): - - B_, N, C = x.shape - qkv = self.qkv(x).reshape(B_, N, 3, self.num_heads, C // self.num_heads).permute(2, 0, 3, 1, 4) - q, k, v = qkv[0], qkv[1], qkv[2] # make torchscript happy (cannot use tensor as tuple) - - q = q * self.scale - attn = (q @ k.transpose(-2, -1)) - - relative_position_bias = self.relative_position_bias_table[self.relative_position_index.view(-1)].view( - self.window_size[0] * self.window_size[1], self.window_size[0] * self.window_size[1], -1) # Wh*Ww,Wh*Ww,nH - relative_position_bias = relative_position_bias.permute(2, 0, 1).contiguous() # nH, Wh*Ww, Wh*Ww - attn = attn + relative_position_bias.unsqueeze(0) - - if mask is not None: - nW = mask.shape[0] - attn = attn.view(B_ // nW, nW, self.num_heads, N, N) + mask.unsqueeze(1).unsqueeze(0) - attn = attn.view(-1, self.num_heads, N, N) - attn = self.softmax(attn) - else: - attn = self.softmax(attn) - - attn = self.attn_drop(attn) - - # print(attn.dtype, v.dtype) - try: - x = (attn @ v).transpose(1, 2).reshape(B_, N, C) - except: - #print(attn.dtype, v.dtype) - x = (attn.half() @ v).transpose(1, 2).reshape(B_, N, C) - x = self.proj(x) - x = self.proj_drop(x) - return x - -class Mlp(nn.Module): - - def __init__(self, in_features, hidden_features=None, out_features=None, act_layer=nn.SiLU, drop=0.): - super().__init__() - out_features = out_features or in_features - hidden_features = hidden_features or in_features - self.fc1 = nn.Linear(in_features, hidden_features) - self.act = act_layer() - self.fc2 = nn.Linear(hidden_features, out_features) - self.drop = nn.Dropout(drop) - - def forward(self, x): - x = self.fc1(x) - x = self.act(x) - x = self.drop(x) - x = self.fc2(x) - x = self.drop(x) - return x - -def window_partition(x, window_size): - - B, H, W, C = x.shape - assert H % window_size == 0, 'feature map h and w can not divide by window size' - x = x.view(B, H // window_size, window_size, W // window_size, window_size, C) - windows = x.permute(0, 1, 3, 2, 4, 5).contiguous().view(-1, window_size, window_size, C) - return windows - -def window_reverse(windows, window_size, H, W): - - B = int(windows.shape[0] / (H * W / window_size / window_size)) - x = windows.view(B, H // window_size, W // window_size, window_size, window_size, -1) - x = x.permute(0, 1, 3, 2, 4, 5).contiguous().view(B, H, W, -1) - return x - - -class SwinTransformerLayer(nn.Module): - - def __init__(self, dim, num_heads, window_size=8, shift_size=0, - mlp_ratio=4., qkv_bias=True, qk_scale=None, drop=0., attn_drop=0., drop_path=0., - act_layer=nn.SiLU, norm_layer=nn.LayerNorm): - super().__init__() - self.dim = dim - self.num_heads = num_heads - self.window_size = window_size - self.shift_size = shift_size - self.mlp_ratio = mlp_ratio - # if min(self.input_resolution) <= self.window_size: - # # if window size is larger than input resolution, we don't partition windows - # self.shift_size = 0 - # self.window_size = min(self.input_resolution) - assert 0 <= self.shift_size < self.window_size, "shift_size must in 0-window_size" - - self.norm1 = norm_layer(dim) - self.attn = WindowAttention( - dim, window_size=(self.window_size, self.window_size), num_heads=num_heads, - qkv_bias=qkv_bias, qk_scale=qk_scale, attn_drop=attn_drop, proj_drop=drop) - - self.drop_path = DropPath(drop_path) if drop_path > 0. else nn.Identity() - self.norm2 = norm_layer(dim) - mlp_hidden_dim = int(dim * mlp_ratio) - self.mlp = Mlp(in_features=dim, hidden_features=mlp_hidden_dim, act_layer=act_layer, drop=drop) - - def create_mask(self, H, W): - # calculate attention mask for SW-MSA - img_mask = torch.zeros((1, H, W, 1)) # 1 H W 1 - h_slices = (slice(0, -self.window_size), - slice(-self.window_size, -self.shift_size), - slice(-self.shift_size, None)) - w_slices = (slice(0, -self.window_size), - slice(-self.window_size, -self.shift_size), - slice(-self.shift_size, None)) - cnt = 0 - for h in h_slices: - for w in w_slices: - img_mask[:, h, w, :] = cnt - cnt += 1 - - mask_windows = window_partition(img_mask, self.window_size) # nW, window_size, window_size, 1 - mask_windows = mask_windows.view(-1, self.window_size * self.window_size) - attn_mask = mask_windows.unsqueeze(1) - mask_windows.unsqueeze(2) - attn_mask = attn_mask.masked_fill(attn_mask != 0, float(-100.0)).masked_fill(attn_mask == 0, float(0.0)) - - return attn_mask - - def forward(self, x): - # reshape x[b c h w] to x[b l c] - _, _, H_, W_ = x.shape - - Padding = False - if min(H_, W_) < self.window_size or H_ % self.window_size!=0 or W_ % self.window_size!=0: - Padding = True - # print(f'img_size {min(H_, W_)} is less than (or not divided by) window_size {self.window_size}, Padding.') - pad_r = (self.window_size - W_ % self.window_size) % self.window_size - pad_b = (self.window_size - H_ % self.window_size) % self.window_size - x = F.pad(x, (0, pad_r, 0, pad_b)) - - # print('2', x.shape) - B, C, H, W = x.shape - L = H * W - x = x.permute(0, 2, 3, 1).contiguous().view(B, L, C) # b, L, c - - # create mask from init to forward - if self.shift_size > 0: - attn_mask = self.create_mask(H, W).to(x.device) - else: - attn_mask = None - - shortcut = x - x = self.norm1(x) - x = x.view(B, H, W, C) - - # cyclic shift - if self.shift_size > 0: - shifted_x = torch.roll(x, shifts=(-self.shift_size, -self.shift_size), dims=(1, 2)) - else: - shifted_x = x - - # partition windows - x_windows = window_partition(shifted_x, self.window_size) # nW*B, window_size, window_size, C - x_windows = x_windows.view(-1, self.window_size * self.window_size, C) # nW*B, window_size*window_size, C - - # W-MSA/SW-MSA - attn_windows = self.attn(x_windows, mask=attn_mask) # nW*B, window_size*window_size, C - - # merge windows - attn_windows = attn_windows.view(-1, self.window_size, self.window_size, C) - shifted_x = window_reverse(attn_windows, self.window_size, H, W) # B H' W' C - - # reverse cyclic shift - if self.shift_size > 0: - x = torch.roll(shifted_x, shifts=(self.shift_size, self.shift_size), dims=(1, 2)) - else: - x = shifted_x - x = x.view(B, H * W, C) - - # FFN - x = shortcut + self.drop_path(x) - x = x + self.drop_path(self.mlp(self.norm2(x))) - - x = x.permute(0, 2, 1).contiguous().view(-1, C, H, W) # b c h w - - if Padding: - x = x[:, :, :H_, :W_] # reverse padding - - return x - - -class SwinTransformerBlock(nn.Module): - def __init__(self, c1, c2, num_heads, num_layers, window_size=8): - super().__init__() - self.conv = None - if c1 != c2: - self.conv = Conv(c1, c2) - - # remove input_resolution - self.blocks = nn.Sequential(*[SwinTransformerLayer(dim=c2, num_heads=num_heads, window_size=window_size, - shift_size=0 if (i % 2 == 0) else window_size // 2) for i in range(num_layers)]) - - def forward(self, x): - if self.conv is not None: - x = self.conv(x) - x = self.blocks(x) - return x - - -class STCSPA(nn.Module): - # CSP Bottleneck https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=True, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super(STCSPA, self).__init__() - c_ = int(c2 * e) # hidden channels - self.cv1 = Conv(c1, c_, 1, 1) - self.cv2 = Conv(c1, c_, 1, 1) - self.cv3 = Conv(2 * c_, c2, 1, 1) - num_heads = c_ // 32 - self.m = SwinTransformerBlock(c_, c_, num_heads, n) - #self.m = nn.Sequential(*[Bottleneck(c_, c_, shortcut, g, e=1.0) for _ in range(n)]) - - def forward(self, x): - y1 = self.m(self.cv1(x)) - y2 = self.cv2(x) - return self.cv3(torch.cat((y1, y2), dim=1)) - - -class STCSPB(nn.Module): - # CSP Bottleneck https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=False, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super(STCSPB, self).__init__() - c_ = int(c2) # hidden channels - self.cv1 = Conv(c1, c_, 1, 1) - self.cv2 = Conv(c_, c_, 1, 1) - self.cv3 = Conv(2 * c_, c2, 1, 1) - num_heads = c_ // 32 - self.m = SwinTransformerBlock(c_, c_, num_heads, n) - #self.m = nn.Sequential(*[Bottleneck(c_, c_, shortcut, g, e=1.0) for _ in range(n)]) - - def forward(self, x): - x1 = self.cv1(x) - y1 = self.m(x1) - y2 = self.cv2(x1) - return self.cv3(torch.cat((y1, y2), dim=1)) - - -class STCSPC(nn.Module): - # CSP Bottleneck https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=True, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super(STCSPC, self).__init__() - c_ = int(c2 * e) # hidden channels - self.cv1 = Conv(c1, c_, 1, 1) - self.cv2 = Conv(c1, c_, 1, 1) - self.cv3 = Conv(c_, c_, 1, 1) - self.cv4 = Conv(2 * c_, c2, 1, 1) - num_heads = c_ // 32 - self.m = SwinTransformerBlock(c_, c_, num_heads, n) - #self.m = nn.Sequential(*[Bottleneck(c_, c_, shortcut, g, e=1.0) for _ in range(n)]) - - def forward(self, x): - y1 = self.cv3(self.m(self.cv1(x))) - y2 = self.cv2(x) - return self.cv4(torch.cat((y1, y2), dim=1)) - -##### end of swin transformer ##### - - -##### swin transformer v2 ##### - -class WindowAttention_v2(nn.Module): - - def __init__(self, dim, window_size, num_heads, qkv_bias=True, attn_drop=0., proj_drop=0., - pretrained_window_size=[0, 0]): - - super().__init__() - self.dim = dim - self.window_size = window_size # Wh, Ww - self.pretrained_window_size = pretrained_window_size - self.num_heads = num_heads - - self.logit_scale = nn.Parameter(torch.log(10 * torch.ones((num_heads, 1, 1))), requires_grad=True) - - # mlp to generate continuous relative position bias - self.cpb_mlp = nn.Sequential(nn.Linear(2, 512, bias=True), - nn.ReLU(inplace=True), - nn.Linear(512, num_heads, bias=False)) - - # get relative_coords_table - relative_coords_h = torch.arange(-(self.window_size[0] - 1), self.window_size[0], dtype=torch.float32) - relative_coords_w = torch.arange(-(self.window_size[1] - 1), self.window_size[1], dtype=torch.float32) - relative_coords_table = torch.stack( - torch.meshgrid([relative_coords_h, - relative_coords_w])).permute(1, 2, 0).contiguous().unsqueeze(0) # 1, 2*Wh-1, 2*Ww-1, 2 - if pretrained_window_size[0] > 0: - relative_coords_table[:, :, :, 0] /= (pretrained_window_size[0] - 1) - relative_coords_table[:, :, :, 1] /= (pretrained_window_size[1] - 1) - else: - relative_coords_table[:, :, :, 0] /= (self.window_size[0] - 1) - relative_coords_table[:, :, :, 1] /= (self.window_size[1] - 1) - relative_coords_table *= 8 # normalize to -8, 8 - relative_coords_table = torch.sign(relative_coords_table) * torch.log2( - torch.abs(relative_coords_table) + 1.0) / np.log2(8) - - self.register_buffer("relative_coords_table", relative_coords_table) - - # get pair-wise relative position index for each token inside the window - coords_h = torch.arange(self.window_size[0]) - coords_w = torch.arange(self.window_size[1]) - coords = torch.stack(torch.meshgrid([coords_h, coords_w])) # 2, Wh, Ww - coords_flatten = torch.flatten(coords, 1) # 2, Wh*Ww - relative_coords = coords_flatten[:, :, None] - coords_flatten[:, None, :] # 2, Wh*Ww, Wh*Ww - relative_coords = relative_coords.permute(1, 2, 0).contiguous() # Wh*Ww, Wh*Ww, 2 - relative_coords[:, :, 0] += self.window_size[0] - 1 # shift to start from 0 - relative_coords[:, :, 1] += self.window_size[1] - 1 - relative_coords[:, :, 0] *= 2 * self.window_size[1] - 1 - relative_position_index = relative_coords.sum(-1) # Wh*Ww, Wh*Ww - self.register_buffer("relative_position_index", relative_position_index) - - self.qkv = nn.Linear(dim, dim * 3, bias=False) - if qkv_bias: - self.q_bias = nn.Parameter(torch.zeros(dim)) - self.v_bias = nn.Parameter(torch.zeros(dim)) - else: - self.q_bias = None - self.v_bias = None - self.attn_drop = nn.Dropout(attn_drop) - self.proj = nn.Linear(dim, dim) - self.proj_drop = nn.Dropout(proj_drop) - self.softmax = nn.Softmax(dim=-1) - - def forward(self, x, mask=None): - - B_, N, C = x.shape - qkv_bias = None - if self.q_bias is not None: - qkv_bias = torch.cat((self.q_bias, torch.zeros_like(self.v_bias, requires_grad=False), self.v_bias)) - qkv = F.linear(input=x, weight=self.qkv.weight, bias=qkv_bias) - qkv = qkv.reshape(B_, N, 3, self.num_heads, -1).permute(2, 0, 3, 1, 4) - q, k, v = qkv[0], qkv[1], qkv[2] # make torchscript happy (cannot use tensor as tuple) - - # cosine attention - attn = (F.normalize(q, dim=-1) @ F.normalize(k, dim=-1).transpose(-2, -1)) - logit_scale = torch.clamp(self.logit_scale, max=torch.log(torch.tensor(1. / 0.01))).exp() - attn = attn * logit_scale - - relative_position_bias_table = self.cpb_mlp(self.relative_coords_table).view(-1, self.num_heads) - relative_position_bias = relative_position_bias_table[self.relative_position_index.view(-1)].view( - self.window_size[0] * self.window_size[1], self.window_size[0] * self.window_size[1], -1) # Wh*Ww,Wh*Ww,nH - relative_position_bias = relative_position_bias.permute(2, 0, 1).contiguous() # nH, Wh*Ww, Wh*Ww - relative_position_bias = 16 * torch.sigmoid(relative_position_bias) - attn = attn + relative_position_bias.unsqueeze(0) - - if mask is not None: - nW = mask.shape[0] - attn = attn.view(B_ // nW, nW, self.num_heads, N, N) + mask.unsqueeze(1).unsqueeze(0) - attn = attn.view(-1, self.num_heads, N, N) - attn = self.softmax(attn) - else: - attn = self.softmax(attn) - - attn = self.attn_drop(attn) - - try: - x = (attn @ v).transpose(1, 2).reshape(B_, N, C) - except: - x = (attn.half() @ v).transpose(1, 2).reshape(B_, N, C) - - x = self.proj(x) - x = self.proj_drop(x) - return x - - def extra_repr(self) -> str: - return f'dim={self.dim}, window_size={self.window_size}, ' \ - f'pretrained_window_size={self.pretrained_window_size}, num_heads={self.num_heads}' - - def flops(self, N): - # calculate flops for 1 window with token length of N - flops = 0 - # qkv = self.qkv(x) - flops += N * self.dim * 3 * self.dim - # attn = (q @ k.transpose(-2, -1)) - flops += self.num_heads * N * (self.dim // self.num_heads) * N - # x = (attn @ v) - flops += self.num_heads * N * N * (self.dim // self.num_heads) - # x = self.proj(x) - flops += N * self.dim * self.dim - return flops - -class Mlp_v2(nn.Module): - def __init__(self, in_features, hidden_features=None, out_features=None, act_layer=nn.SiLU, drop=0.): - super().__init__() - out_features = out_features or in_features - hidden_features = hidden_features or in_features - self.fc1 = nn.Linear(in_features, hidden_features) - self.act = act_layer() - self.fc2 = nn.Linear(hidden_features, out_features) - self.drop = nn.Dropout(drop) - - def forward(self, x): - x = self.fc1(x) - x = self.act(x) - x = self.drop(x) - x = self.fc2(x) - x = self.drop(x) - return x - - -def window_partition_v2(x, window_size): - - B, H, W, C = x.shape - x = x.view(B, H // window_size, window_size, W // window_size, window_size, C) - windows = x.permute(0, 1, 3, 2, 4, 5).contiguous().view(-1, window_size, window_size, C) - return windows - - -def window_reverse_v2(windows, window_size, H, W): - - B = int(windows.shape[0] / (H * W / window_size / window_size)) - x = windows.view(B, H // window_size, W // window_size, window_size, window_size, -1) - x = x.permute(0, 1, 3, 2, 4, 5).contiguous().view(B, H, W, -1) - return x - - -class SwinTransformerLayer_v2(nn.Module): - - def __init__(self, dim, num_heads, window_size=7, shift_size=0, - mlp_ratio=4., qkv_bias=True, drop=0., attn_drop=0., drop_path=0., - act_layer=nn.SiLU, norm_layer=nn.LayerNorm, pretrained_window_size=0): - super().__init__() - self.dim = dim - #self.input_resolution = input_resolution - self.num_heads = num_heads - self.window_size = window_size - self.shift_size = shift_size - self.mlp_ratio = mlp_ratio - #if min(self.input_resolution) <= self.window_size: - # # if window size is larger than input resolution, we don't partition windows - # self.shift_size = 0 - # self.window_size = min(self.input_resolution) - assert 0 <= self.shift_size < self.window_size, "shift_size must in 0-window_size" - - self.norm1 = norm_layer(dim) - self.attn = WindowAttention_v2( - dim, window_size=(self.window_size, self.window_size), num_heads=num_heads, - qkv_bias=qkv_bias, attn_drop=attn_drop, proj_drop=drop, - pretrained_window_size=(pretrained_window_size, pretrained_window_size)) - - self.drop_path = DropPath(drop_path) if drop_path > 0. else nn.Identity() - self.norm2 = norm_layer(dim) - mlp_hidden_dim = int(dim * mlp_ratio) - self.mlp = Mlp_v2(in_features=dim, hidden_features=mlp_hidden_dim, act_layer=act_layer, drop=drop) - - def create_mask(self, H, W): - # calculate attention mask for SW-MSA - img_mask = torch.zeros((1, H, W, 1)) # 1 H W 1 - h_slices = (slice(0, -self.window_size), - slice(-self.window_size, -self.shift_size), - slice(-self.shift_size, None)) - w_slices = (slice(0, -self.window_size), - slice(-self.window_size, -self.shift_size), - slice(-self.shift_size, None)) - cnt = 0 - for h in h_slices: - for w in w_slices: - img_mask[:, h, w, :] = cnt - cnt += 1 - - mask_windows = window_partition(img_mask, self.window_size) # nW, window_size, window_size, 1 - mask_windows = mask_windows.view(-1, self.window_size * self.window_size) - attn_mask = mask_windows.unsqueeze(1) - mask_windows.unsqueeze(2) - attn_mask = attn_mask.masked_fill(attn_mask != 0, float(-100.0)).masked_fill(attn_mask == 0, float(0.0)) - - return attn_mask - - def forward(self, x): - # reshape x[b c h w] to x[b l c] - _, _, H_, W_ = x.shape - - Padding = False - if min(H_, W_) < self.window_size or H_ % self.window_size!=0 or W_ % self.window_size!=0: - Padding = True - # print(f'img_size {min(H_, W_)} is less than (or not divided by) window_size {self.window_size}, Padding.') - pad_r = (self.window_size - W_ % self.window_size) % self.window_size - pad_b = (self.window_size - H_ % self.window_size) % self.window_size - x = F.pad(x, (0, pad_r, 0, pad_b)) - - # print('2', x.shape) - B, C, H, W = x.shape - L = H * W - x = x.permute(0, 2, 3, 1).contiguous().view(B, L, C) # b, L, c - - # create mask from init to forward - if self.shift_size > 0: - attn_mask = self.create_mask(H, W).to(x.device) - else: - attn_mask = None - - shortcut = x - x = x.view(B, H, W, C) - - # cyclic shift - if self.shift_size > 0: - shifted_x = torch.roll(x, shifts=(-self.shift_size, -self.shift_size), dims=(1, 2)) - else: - shifted_x = x - - # partition windows - x_windows = window_partition_v2(shifted_x, self.window_size) # nW*B, window_size, window_size, C - x_windows = x_windows.view(-1, self.window_size * self.window_size, C) # nW*B, window_size*window_size, C - - # W-MSA/SW-MSA - attn_windows = self.attn(x_windows, mask=attn_mask) # nW*B, window_size*window_size, C - - # merge windows - attn_windows = attn_windows.view(-1, self.window_size, self.window_size, C) - shifted_x = window_reverse_v2(attn_windows, self.window_size, H, W) # B H' W' C - - # reverse cyclic shift - if self.shift_size > 0: - x = torch.roll(shifted_x, shifts=(self.shift_size, self.shift_size), dims=(1, 2)) - else: - x = shifted_x - x = x.view(B, H * W, C) - x = shortcut + self.drop_path(self.norm1(x)) - - # FFN - x = x + self.drop_path(self.norm2(self.mlp(x))) - x = x.permute(0, 2, 1).contiguous().view(-1, C, H, W) # b c h w - - if Padding: - x = x[:, :, :H_, :W_] # reverse padding - - return x - - def extra_repr(self) -> str: - return f"dim={self.dim}, input_resolution={self.input_resolution}, num_heads={self.num_heads}, " \ - f"window_size={self.window_size}, shift_size={self.shift_size}, mlp_ratio={self.mlp_ratio}" - - def flops(self): - flops = 0 - H, W = self.input_resolution - # norm1 - flops += self.dim * H * W - # W-MSA/SW-MSA - nW = H * W / self.window_size / self.window_size - flops += nW * self.attn.flops(self.window_size * self.window_size) - # mlp - flops += 2 * H * W * self.dim * self.dim * self.mlp_ratio - # norm2 - flops += self.dim * H * W - return flops - - -class SwinTransformer2Block(nn.Module): - def __init__(self, c1, c2, num_heads, num_layers, window_size=7): - super().__init__() - self.conv = None - if c1 != c2: - self.conv = Conv(c1, c2) - - # remove input_resolution - self.blocks = nn.Sequential(*[SwinTransformerLayer_v2(dim=c2, num_heads=num_heads, window_size=window_size, - shift_size=0 if (i % 2 == 0) else window_size // 2) for i in range(num_layers)]) - - def forward(self, x): - if self.conv is not None: - x = self.conv(x) - x = self.blocks(x) - return x - - -class ST2CSPA(nn.Module): - # CSP Bottleneck https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=True, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super(ST2CSPA, self).__init__() - c_ = int(c2 * e) # hidden channels - self.cv1 = Conv(c1, c_, 1, 1) - self.cv2 = Conv(c1, c_, 1, 1) - self.cv3 = Conv(2 * c_, c2, 1, 1) - num_heads = c_ // 32 - self.m = SwinTransformer2Block(c_, c_, num_heads, n) - #self.m = nn.Sequential(*[Bottleneck(c_, c_, shortcut, g, e=1.0) for _ in range(n)]) - - def forward(self, x): - y1 = self.m(self.cv1(x)) - y2 = self.cv2(x) - return self.cv3(torch.cat((y1, y2), dim=1)) - - -class ST2CSPB(nn.Module): - # CSP Bottleneck https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=False, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super(ST2CSPB, self).__init__() - c_ = int(c2) # hidden channels - self.cv1 = Conv(c1, c_, 1, 1) - self.cv2 = Conv(c_, c_, 1, 1) - self.cv3 = Conv(2 * c_, c2, 1, 1) - num_heads = c_ // 32 - self.m = SwinTransformer2Block(c_, c_, num_heads, n) - #self.m = nn.Sequential(*[Bottleneck(c_, c_, shortcut, g, e=1.0) for _ in range(n)]) - - def forward(self, x): - x1 = self.cv1(x) - y1 = self.m(x1) - y2 = self.cv2(x1) - return self.cv3(torch.cat((y1, y2), dim=1)) - - -class ST2CSPC(nn.Module): - # CSP Bottleneck https://github.com/WongKinYiu/CrossStagePartialNetworks - def __init__(self, c1, c2, n=1, shortcut=True, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion - super(ST2CSPC, self).__init__() - c_ = int(c2 * e) # hidden channels - self.cv1 = Conv(c1, c_, 1, 1) - self.cv2 = Conv(c1, c_, 1, 1) - self.cv3 = Conv(c_, c_, 1, 1) - self.cv4 = Conv(2 * c_, c2, 1, 1) - num_heads = c_ // 32 - self.m = SwinTransformer2Block(c_, c_, num_heads, n) - #self.m = nn.Sequential(*[Bottleneck(c_, c_, shortcut, g, e=1.0) for _ in range(n)]) - - def forward(self, x): - y1 = self.cv3(self.m(self.cv1(x))) - y2 = self.cv2(x) - return self.cv4(torch.cat((y1, y2), dim=1)) - -##### end of swin transformer v2 ##### diff --git a/models/custom_yolov5s.yaml b/models/custom_yolov5s.yaml new file mode 100644 index 0000000..4030fc8 --- /dev/null +++ b/models/custom_yolov5s.yaml @@ -0,0 +1,49 @@ + +# parameters +nc: 4 # number of classes +depth_multiple: 0.33 # model depth multiple +width_multiple: 0.50 # layer channel multiple + +# anchors +anchors: + - [10,13, 16,30, 33,23] # P3/8 + - [30,61, 62,45, 59,119] # P4/16 + - [116,90, 156,198, 373,326] # P5/32 + +# YOLOv5 backbone +backbone: + # [from, number, module, args] + [[-1, 1, Focus, [64, 3]], # 0-P1/2 + [-1, 1, Conv, [128, 3, 2]], # 1-P2/4 + [-1, 3, BottleneckCSP, [128]], + [-1, 1, Conv, [256, 3, 2]], # 3-P3/8 + [-1, 9, BottleneckCSP, [256]], + [-1, 1, Conv, [512, 3, 2]], # 5-P4/16 + [-1, 9, BottleneckCSP, [512]], + [-1, 1, Conv, [1024, 3, 2]], # 7-P5/32 + [-1, 1, SPP, [1024, [5, 9, 13]]], + [-1, 3, BottleneckCSP, [1024, False]], # 9 + ] + +# YOLOv5 head +head: + [[-1, 1, Conv, [512, 1, 1]], + [-1, 1, nn.Upsample, [None, 2, 'nearest']], + [[-1, 6], 1, Concat, [1]], # cat backbone P4 + [-1, 3, BottleneckCSP, [512, False]], # 13 + + [-1, 1, Conv, [256, 1, 1]], + [-1, 1, nn.Upsample, [None, 2, 'nearest']], + [[-1, 4], 1, Concat, [1]], # cat backbone P3 + [-1, 3, BottleneckCSP, [256, False]], # 17 (P3/8-small) + + [-1, 1, Conv, [256, 3, 2]], + [[-1, 14], 1, Concat, [1]], # cat head P4 + [-1, 3, BottleneckCSP, [512, False]], # 20 (P4/16-medium) + + [-1, 1, Conv, [512, 3, 2]], + [[-1, 10], 1, Concat, [1]], # cat head P5 + [-1, 3, BottleneckCSP, [1024, False]], # 23 (P5/32-large) + + [[17, 20, 23], 1, Detect, [nc, anchors]], # Detect(P3, P4, P5) + ] \ No newline at end of file diff --git a/models/experimental.py b/models/experimental.py index 3fa5c12..1b99ce4 100644 --- a/models/experimental.py +++ b/models/experimental.py @@ -1,5 +1,6 @@ +# This file contains experimental modules + import numpy as np -import random import torch import torch.nn as nn @@ -21,6 +22,25 @@ class CrossConv(nn.Module): return x + self.cv2(self.cv1(x)) if self.add else self.cv2(self.cv1(x)) +class C3(nn.Module): + # Cross Convolution CSP + def __init__(self, c1, c2, n=1, shortcut=True, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion + super(C3, self).__init__() + c_ = int(c2 * e) # hidden channels + self.cv1 = Conv(c1, c_, 1, 1) + self.cv2 = nn.Conv2d(c1, c_, 1, 1, bias=False) + self.cv3 = nn.Conv2d(c_, c_, 1, 1, bias=False) + self.cv4 = Conv(2 * c_, c2, 1, 1) + self.bn = nn.BatchNorm2d(2 * c_) # applied to cat(cv2, cv3) + self.act = nn.LeakyReLU(0.1, inplace=True) + self.m = nn.Sequential(*[CrossConv(c_, c_, 3, 1, g, 1.0, shortcut) for _ in range(n)]) + + def forward(self, x): + y1 = self.cv3(self.m(self.cv1(x))) + y2 = self.cv2(x) + return self.cv4(self.act(self.bn(torch.cat((y1, y2), dim=1)))) + + class Sum(nn.Module): # Weighted sum of 2 or more layers https://arxiv.org/abs/1911.09070 def __init__(self, n, weight=False): # n: number of inputs @@ -42,6 +62,34 @@ class Sum(nn.Module): return y +class GhostConv(nn.Module): + # Ghost Convolution https://github.com/huawei-noah/ghostnet + def __init__(self, c1, c2, k=1, s=1, g=1, act=True): # ch_in, ch_out, kernel, stride, groups + super(GhostConv, self).__init__() + c_ = c2 // 2 # hidden channels + self.cv1 = Conv(c1, c_, k, s, g, act) + self.cv2 = Conv(c_, c_, 5, 1, c_, act) + + def forward(self, x): + y = self.cv1(x) + return torch.cat([y, self.cv2(y)], 1) + + +class GhostBottleneck(nn.Module): + # Ghost Bottleneck https://github.com/huawei-noah/ghostnet + def __init__(self, c1, c2, k, s): + super(GhostBottleneck, self).__init__() + c_ = c2 // 2 + self.conv = nn.Sequential(GhostConv(c1, c_, 1, 1), # pw + DWConv(c_, c_, k, s, act=False) if s == 2 else nn.Identity(), # dw + GhostConv(c_, c2, 1, 1, act=False)) # pw-linear + self.shortcut = nn.Sequential(DWConv(c1, c1, k, s, act=False), + Conv(c1, c2, 1, 1, act=False)) if s == 2 else nn.Identity() + + def forward(self, x): + return self.conv(x) + self.shortcut(x) + + class MixConv2d(nn.Module): # Mixed Depthwise Conv https://arxiv.org/abs/1907.09595 def __init__(self, c1, c2, k=(1, 3), s=1, equal_ch=True): @@ -76,181 +124,18 @@ class Ensemble(nn.ModuleList): for module in self: y.append(module(x, augment)[0]) # y = torch.stack(y).max(0)[0] # max ensemble - # y = torch.stack(y).mean(0) # mean ensemble - y = torch.cat(y, 1) # nms ensemble + # y = torch.cat(y, 1) # nms ensemble + y = torch.stack(y).mean(0) # mean ensemble return y, None # inference, train output - - - -class ORT_NMS(torch.autograd.Function): - '''ONNX-Runtime NMS operation''' - @staticmethod - def forward(ctx, - boxes, - scores, - max_output_boxes_per_class=torch.tensor([100]), - iou_threshold=torch.tensor([0.45]), - score_threshold=torch.tensor([0.25])): - device = boxes.device - batch = scores.shape[0] - num_det = random.randint(0, 100) - batches = torch.randint(0, batch, (num_det,)).sort()[0].to(device) - idxs = torch.arange(100, 100 + num_det).to(device) - zeros = torch.zeros((num_det,), dtype=torch.int64).to(device) - selected_indices = torch.cat([batches[None], zeros[None], idxs[None]], 0).T.contiguous() - selected_indices = selected_indices.to(torch.int64) - return selected_indices - - @staticmethod - def symbolic(g, boxes, scores, max_output_boxes_per_class, iou_threshold, score_threshold): - return g.op("NonMaxSuppression", boxes, scores, max_output_boxes_per_class, iou_threshold, score_threshold) - - -class TRT_NMS(torch.autograd.Function): - '''TensorRT NMS operation''' - @staticmethod - def forward( - ctx, - boxes, - scores, - background_class=-1, - box_coding=1, - iou_threshold=0.45, - max_output_boxes=100, - plugin_version="1", - score_activation=0, - score_threshold=0.25, - ): - batch_size, num_boxes, num_classes = scores.shape - num_det = torch.randint(0, max_output_boxes, (batch_size, 1), dtype=torch.int32) - det_boxes = torch.randn(batch_size, max_output_boxes, 4) - det_scores = torch.randn(batch_size, max_output_boxes) - det_classes = torch.randint(0, num_classes, (batch_size, max_output_boxes), dtype=torch.int32) - return num_det, det_boxes, det_scores, det_classes - - @staticmethod - def symbolic(g, - boxes, - scores, - background_class=-1, - box_coding=1, - iou_threshold=0.45, - max_output_boxes=100, - plugin_version="1", - score_activation=0, - score_threshold=0.25): - out = g.op("TRT::EfficientNMS_TRT", - boxes, - scores, - background_class_i=background_class, - box_coding_i=box_coding, - iou_threshold_f=iou_threshold, - max_output_boxes_i=max_output_boxes, - plugin_version_s=plugin_version, - score_activation_i=score_activation, - score_threshold_f=score_threshold, - outputs=4) - nums, boxes, scores, classes = out - return nums, boxes, scores, classes - - -class ONNX_ORT(nn.Module): - '''onnx module with ONNX-Runtime NMS operation.''' - def __init__(self, max_obj=100, iou_thres=0.45, score_thres=0.25, max_wh=640, device=None): - super().__init__() - self.device = device if device else torch.device("cpu") - self.max_obj = torch.tensor([max_obj]).to(device) - self.iou_threshold = torch.tensor([iou_thres]).to(device) - self.score_threshold = torch.tensor([score_thres]).to(device) - self.max_wh = max_wh # if max_wh != 0 : non-agnostic else : agnostic - self.convert_matrix = torch.tensor([[1, 0, 1, 0], [0, 1, 0, 1], [-0.5, 0, 0.5, 0], [0, -0.5, 0, 0.5]], - dtype=torch.float32, - device=self.device) - - def forward(self, x): - boxes = x[:, :, :4] - conf = x[:, :, 4:5] - scores = x[:, :, 5:] - scores *= conf - boxes @= self.convert_matrix - max_score, category_id = scores.max(2, keepdim=True) - dis = category_id.float() * self.max_wh - nmsbox = boxes + dis - max_score_tp = max_score.transpose(1, 2).contiguous() - selected_indices = ORT_NMS.apply(nmsbox, max_score_tp, self.max_obj, self.iou_threshold, self.score_threshold) - X, Y = selected_indices[:, 0], selected_indices[:, 2] - selected_boxes = boxes[X, Y, :] - selected_categories = category_id[X, Y, :].float() - selected_scores = max_score[X, Y, :] - X = X.unsqueeze(1).float() - return torch.cat([X, selected_boxes, selected_categories, selected_scores], 1) - -class ONNX_TRT(nn.Module): - '''onnx module with TensorRT NMS operation.''' - def __init__(self, max_obj=100, iou_thres=0.45, score_thres=0.25, max_wh=None ,device=None): - super().__init__() - assert max_wh is None - self.device = device if device else torch.device('cpu') - self.background_class = -1, - self.box_coding = 1, - self.iou_threshold = iou_thres - self.max_obj = max_obj - self.plugin_version = '1' - self.score_activation = 0 - self.score_threshold = score_thres - - def forward(self, x): - boxes = x[:, :, :4] - conf = x[:, :, 4:5] - scores = x[:, :, 5:] - scores *= conf - num_det, det_boxes, det_scores, det_classes = TRT_NMS.apply(boxes, scores, self.background_class, self.box_coding, - self.iou_threshold, self.max_obj, - self.plugin_version, self.score_activation, - self.score_threshold) - return num_det, det_boxes, det_scores, det_classes - - -class End2End(nn.Module): - '''export onnx or tensorrt model with NMS operation.''' - def __init__(self, model, max_obj=100, iou_thres=0.45, score_thres=0.25, max_wh=None, device=None): - super().__init__() - device = device if device else torch.device('cpu') - assert isinstance(max_wh,(int)) or max_wh is None - self.model = model.to(device) - self.model.model[-1].end2end = True - self.patch_model = ONNX_TRT if max_wh is None else ONNX_ORT - self.end2end = self.patch_model(max_obj, iou_thres, score_thres, max_wh, device) - self.end2end.eval() - - def forward(self, x): - x = self.model(x) - x = self.end2end(x) - return x - - - - - def attempt_load(weights, map_location=None): # Loads an ensemble of models weights=[a,b,c] or a single model weights=[a] or weights=a model = Ensemble() for w in weights if isinstance(weights, list) else [weights]: attempt_download(w) - ckpt = torch.load(w, map_location=map_location) # load - model.append(ckpt['ema' if ckpt.get('ema') else 'model'].float().fuse().eval()) # FP32 model - - # Compatibility updates - for m in model.modules(): - if type(m) in [nn.Hardswish, nn.LeakyReLU, nn.ReLU, nn.ReLU6, nn.SiLU]: - m.inplace = True # pytorch 1.7.0 compatibility - elif type(m) is nn.Upsample: - m.recompute_scale_factor = None # torch 1.11.0 compatibility - elif type(m) is Conv: - m._non_persistent_buffers_set = set() # pytorch 1.6.0 compatibility - + model.append(torch.load(w, map_location=map_location)['model'].float().fuse().eval()) # load FP32 model + if len(model) == 1: return model[-1] # return model else: @@ -258,5 +143,3 @@ def attempt_load(weights, map_location=None): for k in ['names', 'stride']: setattr(model, k, getattr(model[-1], k)) return model # return ensemble - - diff --git a/models/export.py b/models/export.py new file mode 100644 index 0000000..033b901 --- /dev/null +++ b/models/export.py @@ -0,0 +1,76 @@ +"""Exports a YOLOv5 *.pt model to ONNX and TorchScript formats + +Usage: + $ export PYTHONPATH="$PWD" && python models/export.py --weights ./weights/yolov5s.pt --img 640 --batch 1 +""" + +import argparse + +import torch + +from utils.google_utils import attempt_download +from utils.general import set_logging + +if __name__ == '__main__': + parser = argparse.ArgumentParser() + parser.add_argument('--weights', type=str, default='./yolov5s.pt', help='weights path') + parser.add_argument('--img-size', nargs='+', type=int, default=[640, 640], help='image size') + parser.add_argument('--batch-size', type=int, default=1, help='batch size') + opt = parser.parse_args() + opt.img_size *= 2 if len(opt.img_size) == 1 else 1 # expand + print(opt) + set_logging() + + # Input + img = torch.zeros((opt.batch_size, 3, *opt.img_size)) # image size(1,3,320,192) iDetection + + # Load PyTorch model + attempt_download(opt.weights) + model = torch.load(opt.weights, map_location=torch.device('cpu'))['model'].float() + model.eval() + model.model[-1].export = True # set Detect() layer export=True + y = model(img) # dry run + + # TorchScript export + try: + print('\nStarting TorchScript export with torch %s...' % torch.__version__) + f = opt.weights.replace('.pt', '.torchscript.pt') # filename + ts = torch.jit.trace(model, img) + ts.save(f) + print('TorchScript export success, saved as %s' % f) + except Exception as e: + print('TorchScript export failure: %s' % e) + + # ONNX export + try: + import onnx + + print('\nStarting ONNX export with onnx %s...' % onnx.__version__) + f = opt.weights.replace('.pt', '.onnx') # filename + model.fuse() # only for ONNX + torch.onnx.export(model, img, f, verbose=False, opset_version=12, input_names=['images'], + output_names=['classes', 'boxes'] if y is None else ['output']) + + # Checks + onnx_model = onnx.load(f) # load onnx model + onnx.checker.check_model(onnx_model) # check onnx model + print(onnx.helper.printable_graph(onnx_model.graph)) # print a human readable model + print('ONNX export success, saved as %s' % f) + except Exception as e: + print('ONNX export failure: %s' % e) + + # CoreML export + try: + import coremltools as ct + + print('\nStarting CoreML export with coremltools %s...' % ct.__version__) + # convert model from torchscript and apply pixel scaling as per detect.py + model = ct.convert(ts, inputs=[ct.ImageType(name='images', shape=img.shape, scale=1 / 255.0, bias=[0, 0, 0])]) + f = opt.weights.replace('.pt', '.mlmodel') # filename + model.save(f) + print('CoreML export success, saved as %s' % f) + except Exception as e: + print('CoreML export failure: %s' % e) + + # Finish + print('\nExport complete. Visualize with https://github.com/lutzroeder/netron.') diff --git a/models/hub/yolov3-spp.yaml b/models/hub/yolov3-spp.yaml new file mode 100644 index 0000000..b6cadd9 --- /dev/null +++ b/models/hub/yolov3-spp.yaml @@ -0,0 +1,51 @@ +# parameters +nc: 80 # number of classes +depth_multiple: 1.0 # model depth multiple +width_multiple: 1.0 # layer channel multiple + +# anchors +anchors: + - [10,13, 16,30, 33,23] # P3/8 + - [30,61, 62,45, 59,119] # P4/16 + - [116,90, 156,198, 373,326] # P5/32 + +# darknet53 backbone +backbone: + # [from, number, module, args] + [[-1, 1, Conv, [32, 3, 1]], # 0 + [-1, 1, Conv, [64, 3, 2]], # 1-P1/2 + [-1, 1, Bottleneck, [64]], + [-1, 1, Conv, [128, 3, 2]], # 3-P2/4 + [-1, 2, Bottleneck, [128]], + [-1, 1, Conv, [256, 3, 2]], # 5-P3/8 + [-1, 8, Bottleneck, [256]], + [-1, 1, Conv, [512, 3, 2]], # 7-P4/16 + [-1, 8, Bottleneck, [512]], + [-1, 1, Conv, [1024, 3, 2]], # 9-P5/32 + [-1, 4, Bottleneck, [1024]], # 10 + ] + +# YOLOv3-SPP head +head: + [[-1, 1, Bottleneck, [1024, False]], + [-1, 1, SPP, [512, [5, 9, 13]]], + [-1, 1, Conv, [1024, 3, 1]], + [-1, 1, Conv, [512, 1, 1]], + [-1, 1, Conv, [1024, 3, 1]], # 15 (P5/32-large) + + [-2, 1, Conv, [256, 1, 1]], + [-1, 1, nn.Upsample, [None, 2, 'nearest']], + [[-1, 8], 1, Concat, [1]], # cat backbone P4 + [-1, 1, Bottleneck, [512, False]], + [-1, 1, Bottleneck, [512, False]], + [-1, 1, Conv, [256, 1, 1]], + [-1, 1, Conv, [512, 3, 1]], # 22 (P4/16-medium) + + [-2, 1, Conv, [128, 1, 1]], + [-1, 1, nn.Upsample, [None, 2, 'nearest']], + [[-1, 6], 1, Concat, [1]], # cat backbone P3 + [-1, 1, Bottleneck, [256, False]], + [-1, 2, Bottleneck, [256, False]], # 27 (P3/8-small) + + [[27, 22, 15], 1, Detect, [nc, anchors]], # Detect(P3, P4, P5) + ] diff --git a/models/hub/yolov5-fpn.yaml b/models/hub/yolov5-fpn.yaml new file mode 100644 index 0000000..4d2fae1 --- /dev/null +++ b/models/hub/yolov5-fpn.yaml @@ -0,0 +1,42 @@ +# parameters +nc: 80 # number of classes +depth_multiple: 1.0 # model depth multiple +width_multiple: 1.0 # layer channel multiple + +# anchors +anchors: + - [10,13, 16,30, 33,23] # P3/8 + - [30,61, 62,45, 59,119] # P4/16 + - [116,90, 156,198, 373,326] # P5/32 + +# YOLOv5 backbone +backbone: + # [from, number, module, args] + [[-1, 1, Focus, [64, 3]], # 0-P1/2 + [-1, 1, Conv, [128, 3, 2]], # 1-P2/4 + [-1, 3, Bottleneck, [128]], + [-1, 1, Conv, [256, 3, 2]], # 3-P3/8 + [-1, 9, BottleneckCSP, [256]], + [-1, 1, Conv, [512, 3, 2]], # 5-P4/16 + [-1, 9, BottleneckCSP, [512]], + [-1, 1, Conv, [1024, 3, 2]], # 7-P5/32 + [-1, 1, SPP, [1024, [5, 9, 13]]], + [-1, 6, BottleneckCSP, [1024]], # 9 + ] + +# YOLOv5 FPN head +head: + [[-1, 3, BottleneckCSP, [1024, False]], # 10 (P5/32-large) + + [-1, 1, nn.Upsample, [None, 2, 'nearest']], + [[-1, 6], 1, Concat, [1]], # cat backbone P4 + [-1, 1, Conv, [512, 1, 1]], + [-1, 3, BottleneckCSP, [512, False]], # 14 (P4/16-medium) + + [-1, 1, nn.Upsample, [None, 2, 'nearest']], + [[-1, 4], 1, Concat, [1]], # cat backbone P3 + [-1, 1, Conv, [256, 1, 1]], + [-1, 3, BottleneckCSP, [256, False]], # 18 (P3/8-small) + + [[18, 14, 10], 1, Detect, [nc, anchors]], # Detect(P3, P4, P5) + ] diff --git a/models/hub/yolov5-panet.yaml b/models/hub/yolov5-panet.yaml new file mode 100644 index 0000000..9ed05dd --- /dev/null +++ b/models/hub/yolov5-panet.yaml @@ -0,0 +1,48 @@ +# parameters +nc: 80 # number of classes +depth_multiple: 1.0 # model depth multiple +width_multiple: 1.0 # layer channel multiple + +# anchors +anchors: + - [116,90, 156,198, 373,326] # P5/32 + - [30,61, 62,45, 59,119] # P4/16 + - [10,13, 16,30, 33,23] # P3/8 + +# YOLOv5 backbone +backbone: + # [from, number, module, args] + [[-1, 1, Focus, [64, 3]], # 0-P1/2 + [-1, 1, Conv, [128, 3, 2]], # 1-P2/4 + [-1, 3, BottleneckCSP, [128]], + [-1, 1, Conv, [256, 3, 2]], # 3-P3/8 + [-1, 9, BottleneckCSP, [256]], + [-1, 1, Conv, [512, 3, 2]], # 5-P4/16 + [-1, 9, BottleneckCSP, [512]], + [-1, 1, Conv, [1024, 3, 2]], # 7-P5/32 + [-1, 1, SPP, [1024, [5, 9, 13]]], + [-1, 3, BottleneckCSP, [1024, False]], # 9 + ] + +# YOLOv5 PANet head +head: + [[-1, 1, Conv, [512, 1, 1]], + [-1, 1, nn.Upsample, [None, 2, 'nearest']], + [[-1, 6], 1, Concat, [1]], # cat backbone P4 + [-1, 3, BottleneckCSP, [512, False]], # 13 + + [-1, 1, Conv, [256, 1, 1]], + [-1, 1, nn.Upsample, [None, 2, 'nearest']], + [[-1, 4], 1, Concat, [1]], # cat backbone P3 + [-1, 3, BottleneckCSP, [256, False]], # 17 (P3/8-small) + + [-1, 1, Conv, [256, 3, 2]], + [[-1, 14], 1, Concat, [1]], # cat head P4 + [-1, 3, BottleneckCSP, [512, False]], # 20 (P4/16-medium) + + [-1, 1, Conv, [512, 3, 2]], + [[-1, 10], 1, Concat, [1]], # cat head P5 + [-1, 3, BottleneckCSP, [1024, False]], # 23 (P5/32-large) + + [[17, 20, 23], 1, Detect, [nc, anchors]], # Detect(P5, P4, P3) + ] diff --git a/models/yolo.py b/models/yolo.py index a35b847..573a3ab 100644 --- a/models/yolo.py +++ b/models/yolo.py @@ -1,30 +1,24 @@ import argparse +import math import logging -import sys from copy import deepcopy +from pathlib import Path -sys.path.append('./') # to run '$ python *.py' files in subdirectories -logger = logging.getLogger(__name__) import torch -from models.common import * -from models.experimental import * -from utils.autoanchor import check_anchor_order -from utils.general import make_divisible, check_file, set_logging -from utils.torch_utils import time_synchronized, fuse_conv_and_bn, model_info, scale_img, initialize_weights, \ - select_device, copy_attr -from utils.loss import SigmoidBin +import torch.nn as nn + +from models.common import Conv, Bottleneck, SPP, DWConv, Focus, BottleneckCSP, Concat +from models.experimental import MixConv2d, CrossConv, C3 +from utils.general import check_anchor_order, make_divisible, check_file, set_logging +from utils.torch_utils import ( + time_synchronized, fuse_conv_and_bn, model_info, scale_img, initialize_weights, select_device) -try: - import thop # for FLOPS computation -except ImportError: - thop = None +logger = logging.getLogger(__name__) class Detect(nn.Module): stride = None # strides computed during build export = False # onnx export - end2end = False - include_nms = False def __init__(self, nc=80, anchors=(), ch=()): # detection layer super(Detect, self).__init__() @@ -47,371 +41,15 @@ class Detect(nn.Module): bs, _, ny, nx = x[i].shape # x(bs,255,20,20) to x(bs,3,20,20,85) x[i] = x[i].view(bs, self.na, self.no, ny, nx).permute(0, 1, 3, 4, 2).contiguous() - if not self.training: # inference - if self.grid[i].shape[2:4] != x[i].shape[2:4]: - self.grid[i] = self._make_grid(nx, ny).to(x[i].device) - y = x[i].sigmoid() - if not torch.onnx.is_in_onnx_export(): - y[..., 0:2] = (y[..., 0:2] * 2. - 0.5 + self.grid[i]) * self.stride[i] # xy - y[..., 2:4] = (y[..., 2:4] * 2) ** 2 * self.anchor_grid[i] # wh - else: - xy = (y[..., 0:2] * 2. - 0.5 + self.grid[i]) * self.stride[i] # xy - wh = (y[..., 2:4] * 2) ** 2 * self.anchor_grid[i] # wh - y = torch.cat((xy, wh, y[..., 4:]), -1) - z.append(y.view(bs, -1, self.no)) - - if self.training: - out = x - elif self.end2end: - out = torch.cat(z, 1) - elif self.include_nms: - z = self.convert(z) - out = (z, ) - else: - out = (torch.cat(z, 1), x) - - return out - - @staticmethod - def _make_grid(nx=20, ny=20): - yv, xv = torch.meshgrid([torch.arange(ny), torch.arange(nx)]) - return torch.stack((xv, yv), 2).view((1, 1, ny, nx, 2)).float() - - def convert(self, z): - z = torch.cat(z, 1) - box = z[:, :, :4] - conf = z[:, :, 4:5] - score = z[:, :, 5:] - score *= conf - convert_matrix = torch.tensor([[1, 0, 1, 0], [0, 1, 0, 1], [-0.5, 0, 0.5, 0], [0, -0.5, 0, 0.5]], - dtype=torch.float32, - device=z.device) - box @= convert_matrix - return (box, score) - - -class IDetect(nn.Module): - stride = None # strides computed during build - export = False # onnx export - end2end = False - include_nms = False - - def __init__(self, nc=80, anchors=(), ch=()): # detection layer - super(IDetect, self).__init__() - self.nc = nc # number of classes - self.no = nc + 5 # number of outputs per anchor - self.nl = len(anchors) # number of detection layers - self.na = len(anchors[0]) // 2 # number of anchors - self.grid = [torch.zeros(1)] * self.nl # init grid - a = torch.tensor(anchors).float().view(self.nl, -1, 2) - self.register_buffer('anchors', a) # shape(nl,na,2) - self.register_buffer('anchor_grid', a.clone().view(self.nl, 1, -1, 1, 1, 2)) # shape(nl,1,na,1,1,2) - self.m = nn.ModuleList(nn.Conv2d(x, self.no * self.na, 1) for x in ch) # output conv - - self.ia = nn.ModuleList(ImplicitA(x) for x in ch) - self.im = nn.ModuleList(ImplicitM(self.no * self.na) for _ in ch) - - def forward(self, x): - # x = x.copy() # for profiling - z = [] # inference output - self.training |= self.export - for i in range(self.nl): - x[i] = self.m[i](self.ia[i](x[i])) # conv - x[i] = self.im[i](x[i]) - bs, _, ny, nx = x[i].shape # x(bs,255,20,20) to x(bs,3,20,20,85) - x[i] = x[i].view(bs, self.na, self.no, ny, nx).permute(0, 1, 3, 4, 2).contiguous() - - if not self.training: # inference - if self.grid[i].shape[2:4] != x[i].shape[2:4]: - self.grid[i] = self._make_grid(nx, ny).to(x[i].device) - - y = x[i].sigmoid() - y[..., 0:2] = (y[..., 0:2] * 2. - 0.5 + self.grid[i]) * self.stride[i] # xy - y[..., 2:4] = (y[..., 2:4] * 2) ** 2 * self.anchor_grid[i] # wh - z.append(y.view(bs, -1, self.no)) - - return x if self.training else (torch.cat(z, 1), x) - - def fuseforward(self, x): - # x = x.copy() # for profiling - z = [] # inference output - self.training |= self.export - for i in range(self.nl): - x[i] = self.m[i](x[i]) # conv - bs, _, ny, nx = x[i].shape # x(bs,255,20,20) to x(bs,3,20,20,85) - x[i] = x[i].view(bs, self.na, self.no, ny, nx).permute(0, 1, 3, 4, 2).contiguous() - - if not self.training: # inference - if self.grid[i].shape[2:4] != x[i].shape[2:4]: - self.grid[i] = self._make_grid(nx, ny).to(x[i].device) - - y = x[i].sigmoid() - y[..., 0:2] = (y[..., 0:2] * 2. - 0.5 + self.grid[i]) * self.stride[i] # xy - y[..., 2:4] = (y[..., 2:4] * 2) ** 2 * self.anchor_grid[i] # wh - z.append(y.view(bs, -1, self.no)) - - if self.training: - out = x - elif self.end2end: - out = torch.cat(z, 1) - elif self.include_nms: - z = self.convert(z) - out = (z, ) - else: - out = (torch.cat(z, 1), x) - - return out - - def fuse(self): - print("IDetect.fuse") - # fuse ImplicitA and Convolution - for i in range(len(self.m)): - c1,c2,_,_ = self.m[i].weight.shape - c1_,c2_, _,_ = self.ia[i].implicit.shape - self.m[i].bias += torch.matmul(self.m[i].weight.reshape(c1,c2),self.ia[i].implicit.reshape(c2_,c1_)).squeeze(1) - - # fuse ImplicitM and Convolution - for i in range(len(self.m)): - c1,c2, _,_ = self.im[i].implicit.shape - self.m[i].bias *= self.im[i].implicit.reshape(c2) - self.m[i].weight *= self.im[i].implicit.transpose(0,1) - - @staticmethod - def _make_grid(nx=20, ny=20): - yv, xv = torch.meshgrid([torch.arange(ny), torch.arange(nx)]) - return torch.stack((xv, yv), 2).view((1, 1, ny, nx, 2)).float() - - def convert(self, z): - z = torch.cat(z, 1) - box = z[:, :, :4] - conf = z[:, :, 4:5] - score = z[:, :, 5:] - score *= conf - convert_matrix = torch.tensor([[1, 0, 1, 0], [0, 1, 0, 1], [-0.5, 0, 0.5, 0], [0, -0.5, 0, 0.5]], - dtype=torch.float32, - device=z.device) - box @= convert_matrix - return (box, score) - - -class IKeypoint(nn.Module): - stride = None # strides computed during build - export = False # onnx export - - def __init__(self, nc=80, anchors=(), nkpt=17, ch=(), inplace=True, dw_conv_kpt=False): # detection layer - super(IKeypoint, self).__init__() - self.nc = nc # number of classes - self.nkpt = nkpt - self.dw_conv_kpt = dw_conv_kpt - self.no_det=(nc + 5) # number of outputs per anchor for box and class - self.no_kpt = 3*self.nkpt ## number of outputs per anchor for keypoints - self.no = self.no_det+self.no_kpt - self.nl = len(anchors) # number of detection layers - self.na = len(anchors[0]) // 2 # number of anchors - self.grid = [torch.zeros(1)] * self.nl # init grid - self.flip_test = False - a = torch.tensor(anchors).float().view(self.nl, -1, 2) - self.register_buffer('anchors', a) # shape(nl,na,2) - self.register_buffer('anchor_grid', a.clone().view(self.nl, 1, -1, 1, 1, 2)) # shape(nl,1,na,1,1,2) - self.m = nn.ModuleList(nn.Conv2d(x, self.no_det * self.na, 1) for x in ch) # output conv - - self.ia = nn.ModuleList(ImplicitA(x) for x in ch) - self.im = nn.ModuleList(ImplicitM(self.no_det * self.na) for _ in ch) - - if self.nkpt is not None: - if self.dw_conv_kpt: #keypoint head is slightly more complex - self.m_kpt = nn.ModuleList( - nn.Sequential(DWConv(x, x, k=3), Conv(x,x), - DWConv(x, x, k=3), Conv(x, x), - DWConv(x, x, k=3), Conv(x,x), - DWConv(x, x, k=3), Conv(x, x), - DWConv(x, x, k=3), Conv(x, x), - DWConv(x, x, k=3), nn.Conv2d(x, self.no_kpt * self.na, 1)) for x in ch) - else: #keypoint head is a single convolution - self.m_kpt = nn.ModuleList(nn.Conv2d(x, self.no_kpt * self.na, 1) for x in ch) - - self.inplace = inplace # use in-place ops (e.g. slice assignment) - - def forward(self, x): - # x = x.copy() # for profiling - z = [] # inference output - self.training |= self.export - for i in range(self.nl): - if self.nkpt is None or self.nkpt==0: - x[i] = self.im[i](self.m[i](self.ia[i](x[i]))) # conv - else : - x[i] = torch.cat((self.im[i](self.m[i](self.ia[i](x[i]))), self.m_kpt[i](x[i])), axis=1) - - bs, _, ny, nx = x[i].shape # x(bs,255,20,20) to x(bs,3,20,20,85) - x[i] = x[i].view(bs, self.na, self.no, ny, nx).permute(0, 1, 3, 4, 2).contiguous() - x_det = x[i][..., :6] - x_kpt = x[i][..., 6:] - - if not self.training: # inference - if self.grid[i].shape[2:4] != x[i].shape[2:4]: - self.grid[i] = self._make_grid(nx, ny).to(x[i].device) - kpt_grid_x = self.grid[i][..., 0:1] - kpt_grid_y = self.grid[i][..., 1:2] - - if self.nkpt == 0: - y = x[i].sigmoid() - else: - y = x_det.sigmoid() - - if self.inplace: - xy = (y[..., 0:2] * 2. - 0.5 + self.grid[i]) * self.stride[i] # xy - wh = (y[..., 2:4] * 2) ** 2 * self.anchor_grid[i].view(1, self.na, 1, 1, 2) # wh - if self.nkpt != 0: - x_kpt[..., 0::3] = (x_kpt[..., ::3] * 2. - 0.5 + kpt_grid_x.repeat(1,1,1,1,17)) * self.stride[i] # xy - x_kpt[..., 1::3] = (x_kpt[..., 1::3] * 2. - 0.5 + kpt_grid_y.repeat(1,1,1,1,17)) * self.stride[i] # xy - #x_kpt[..., 0::3] = (x_kpt[..., ::3] + kpt_grid_x.repeat(1,1,1,1,17)) * self.stride[i] # xy - #x_kpt[..., 1::3] = (x_kpt[..., 1::3] + kpt_grid_y.repeat(1,1,1,1,17)) * self.stride[i] # xy - #print('==============================') - #print(self.anchor_grid[i].shape) - #print(self.anchor_grid[i][...,0].unsqueeze(4).shape) - #print(x_kpt[..., 0::3].shape) - #x_kpt[..., 0::3] = ((x_kpt[..., 0::3].tanh() * 2.) ** 3 * self.anchor_grid[i][...,0].unsqueeze(4).repeat(1,1,1,1,self.nkpt)) + kpt_grid_x.repeat(1,1,1,1,17) * self.stride[i] # xy - #x_kpt[..., 1::3] = ((x_kpt[..., 1::3].tanh() * 2.) ** 3 * self.anchor_grid[i][...,1].unsqueeze(4).repeat(1,1,1,1,self.nkpt)) + kpt_grid_y.repeat(1,1,1,1,17) * self.stride[i] # xy - #x_kpt[..., 0::3] = (((x_kpt[..., 0::3].sigmoid() * 4.) ** 2 - 8.) * self.anchor_grid[i][...,0].unsqueeze(4).repeat(1,1,1,1,self.nkpt)) + kpt_grid_x.repeat(1,1,1,1,17) * self.stride[i] # xy - #x_kpt[..., 1::3] = (((x_kpt[..., 1::3].sigmoid() * 4.) ** 2 - 8.) * self.anchor_grid[i][...,1].unsqueeze(4).repeat(1,1,1,1,self.nkpt)) + kpt_grid_y.repeat(1,1,1,1,17) * self.stride[i] # xy - x_kpt[..., 2::3] = x_kpt[..., 2::3].sigmoid() - - y = torch.cat((xy, wh, y[..., 4:], x_kpt), dim = -1) - - else: # for YOLOv5 on AWS Inferentia https://github.com/ultralytics/yolov5/pull/2953 - xy = (y[..., 0:2] * 2. - 0.5 + self.grid[i]) * self.stride[i] # xy - wh = (y[..., 2:4] * 2) ** 2 * self.anchor_grid[i] # wh - if self.nkpt != 0: - y[..., 6:] = (y[..., 6:] * 2. - 0.5 + self.grid[i].repeat((1,1,1,1,self.nkpt))) * self.stride[i] # xy - y = torch.cat((xy, wh, y[..., 4:]), -1) - - z.append(y.view(bs, -1, self.no)) - - return x if self.training else (torch.cat(z, 1), x) - - @staticmethod - def _make_grid(nx=20, ny=20): - yv, xv = torch.meshgrid([torch.arange(ny), torch.arange(nx)]) - return torch.stack((xv, yv), 2).view((1, 1, ny, nx, 2)).float() - - -class IAuxDetect(nn.Module): - stride = None # strides computed during build - export = False # onnx export - - def __init__(self, nc=80, anchors=(), ch=()): # detection layer - super(IAuxDetect, self).__init__() - self.nc = nc # number of classes - self.no = nc + 5 # number of outputs per anchor - self.nl = len(anchors) # number of detection layers - self.na = len(anchors[0]) // 2 # number of anchors - self.grid = [torch.zeros(1)] * self.nl # init grid - a = torch.tensor(anchors).float().view(self.nl, -1, 2) - self.register_buffer('anchors', a) # shape(nl,na,2) - self.register_buffer('anchor_grid', a.clone().view(self.nl, 1, -1, 1, 1, 2)) # shape(nl,1,na,1,1,2) - self.m = nn.ModuleList(nn.Conv2d(x, self.no * self.na, 1) for x in ch[:self.nl]) # output conv - self.m2 = nn.ModuleList(nn.Conv2d(x, self.no * self.na, 1) for x in ch[self.nl:]) # output conv - - self.ia = nn.ModuleList(ImplicitA(x) for x in ch[:self.nl]) - self.im = nn.ModuleList(ImplicitM(self.no * self.na) for _ in ch[:self.nl]) - - def forward(self, x): - # x = x.copy() # for profiling - z = [] # inference output - self.training |= self.export - for i in range(self.nl): - x[i] = self.m[i](self.ia[i](x[i])) # conv - x[i] = self.im[i](x[i]) - bs, _, ny, nx = x[i].shape # x(bs,255,20,20) to x(bs,3,20,20,85) - x[i] = x[i].view(bs, self.na, self.no, ny, nx).permute(0, 1, 3, 4, 2).contiguous() - - x[i+self.nl] = self.m2[i](x[i+self.nl]) - x[i+self.nl] = x[i+self.nl].view(bs, self.na, self.no, ny, nx).permute(0, 1, 3, 4, 2).contiguous() - if not self.training: # inference if self.grid[i].shape[2:4] != x[i].shape[2:4]: self.grid[i] = self._make_grid(nx, ny).to(x[i].device) y = x[i].sigmoid() - y[..., 0:2] = (y[..., 0:2] * 2. - 0.5 + self.grid[i]) * self.stride[i] # xy + y[..., 0:2] = (y[..., 0:2] * 2. - 0.5 + self.grid[i].to(x[i].device)) * self.stride[i] # xy y[..., 2:4] = (y[..., 2:4] * 2) ** 2 * self.anchor_grid[i] # wh z.append(y.view(bs, -1, self.no)) - return x if self.training else (torch.cat(z, 1), x[:self.nl]) - - @staticmethod - def _make_grid(nx=20, ny=20): - yv, xv = torch.meshgrid([torch.arange(ny), torch.arange(nx)]) - return torch.stack((xv, yv), 2).view((1, 1, ny, nx, 2)).float() - - -class IBin(nn.Module): - stride = None # strides computed during build - export = False # onnx export - - def __init__(self, nc=80, anchors=(), ch=(), bin_count=21): # detection layer - super(IBin, self).__init__() - self.nc = nc # number of classes - self.bin_count = bin_count - - self.w_bin_sigmoid = SigmoidBin(bin_count=self.bin_count, min=0.0, max=4.0) - self.h_bin_sigmoid = SigmoidBin(bin_count=self.bin_count, min=0.0, max=4.0) - # classes, x,y,obj - self.no = nc + 3 + \ - self.w_bin_sigmoid.get_length() + self.h_bin_sigmoid.get_length() # w-bce, h-bce - # + self.x_bin_sigmoid.get_length() + self.y_bin_sigmoid.get_length() - - self.nl = len(anchors) # number of detection layers - self.na = len(anchors[0]) // 2 # number of anchors - self.grid = [torch.zeros(1)] * self.nl # init grid - a = torch.tensor(anchors).float().view(self.nl, -1, 2) - self.register_buffer('anchors', a) # shape(nl,na,2) - self.register_buffer('anchor_grid', a.clone().view(self.nl, 1, -1, 1, 1, 2)) # shape(nl,1,na,1,1,2) - self.m = nn.ModuleList(nn.Conv2d(x, self.no * self.na, 1) for x in ch) # output conv - - self.ia = nn.ModuleList(ImplicitA(x) for x in ch) - self.im = nn.ModuleList(ImplicitM(self.no * self.na) for _ in ch) - - def forward(self, x): - - #self.x_bin_sigmoid.use_fw_regression = True - #self.y_bin_sigmoid.use_fw_regression = True - self.w_bin_sigmoid.use_fw_regression = True - self.h_bin_sigmoid.use_fw_regression = True - - # x = x.copy() # for profiling - z = [] # inference output - self.training |= self.export - for i in range(self.nl): - x[i] = self.m[i](self.ia[i](x[i])) # conv - x[i] = self.im[i](x[i]) - bs, _, ny, nx = x[i].shape # x(bs,255,20,20) to x(bs,3,20,20,85) - x[i] = x[i].view(bs, self.na, self.no, ny, nx).permute(0, 1, 3, 4, 2).contiguous() - - if not self.training: # inference - if self.grid[i].shape[2:4] != x[i].shape[2:4]: - self.grid[i] = self._make_grid(nx, ny).to(x[i].device) - - y = x[i].sigmoid() - y[..., 0:2] = (y[..., 0:2] * 2. - 0.5 + self.grid[i]) * self.stride[i] # xy - #y[..., 2:4] = (y[..., 2:4] * 2) ** 2 * self.anchor_grid[i] # wh - - - #px = (self.x_bin_sigmoid.forward(y[..., 0:12]) + self.grid[i][..., 0]) * self.stride[i] - #py = (self.y_bin_sigmoid.forward(y[..., 12:24]) + self.grid[i][..., 1]) * self.stride[i] - - pw = self.w_bin_sigmoid.forward(y[..., 2:24]) * self.anchor_grid[i][..., 0] - ph = self.h_bin_sigmoid.forward(y[..., 24:46]) * self.anchor_grid[i][..., 1] - - #y[..., 0] = px - #y[..., 1] = py - y[..., 2] = pw - y[..., 3] = ph - - y = torch.cat((y[..., 0:4], y[..., 46:]), dim=-1) - - z.append(y.view(bs, -1, y.shape[-1])) - return x if self.training else (torch.cat(z, 1), x) @staticmethod @@ -421,77 +59,38 @@ class IBin(nn.Module): class Model(nn.Module): - def __init__(self, cfg='yolor-csp-c.yaml', ch=3, nc=None, anchors=None): # model, input channels, number of classes + def __init__(self, cfg='yolov5s.yaml', ch=3, nc=None): # model, input channels, number of classes super(Model, self).__init__() - self.traced = False if isinstance(cfg, dict): self.yaml = cfg # model dict else: # is *.yaml import yaml # for torch hub self.yaml_file = Path(cfg).name with open(cfg) as f: - self.yaml = yaml.load(f, Loader=yaml.SafeLoader) # model dict + self.yaml = yaml.load(f, Loader=yaml.FullLoader) # model dict # Define model - ch = self.yaml['ch'] = self.yaml.get('ch', ch) # input channels if nc and nc != self.yaml['nc']: - logger.info(f"Overriding model.yaml nc={self.yaml['nc']} with nc={nc}") + print('Overriding %s nc=%g with nc=%g' % (cfg, self.yaml['nc'], nc)) self.yaml['nc'] = nc # override yaml value - if anchors: - logger.info(f'Overriding model.yaml anchors with anchors={anchors}') - self.yaml['anchors'] = round(anchors) # override yaml value - self.model, self.save = parse_model(deepcopy(self.yaml), ch=[ch]) # model, savelist - self.names = [str(i) for i in range(self.yaml['nc'])] # default names + self.model, self.save = parse_model(deepcopy(self.yaml), ch=[ch]) # model, savelist, ch_out # print([x.shape for x in self.forward(torch.zeros(1, ch, 64, 64))]) # Build strides, anchors m = self.model[-1] # Detect() if isinstance(m, Detect): - s = 256 # 2x min stride + s = 128 # 2x min stride m.stride = torch.tensor([s / x.shape[-2] for x in self.forward(torch.zeros(1, ch, s, s))]) # forward m.anchors /= m.stride.view(-1, 1, 1) check_anchor_order(m) self.stride = m.stride self._initialize_biases() # only run once # print('Strides: %s' % m.stride.tolist()) - if isinstance(m, IDetect): - s = 256 # 2x min stride - m.stride = torch.tensor([s / x.shape[-2] for x in self.forward(torch.zeros(1, ch, s, s))]) # forward - m.anchors /= m.stride.view(-1, 1, 1) - check_anchor_order(m) - self.stride = m.stride - self._initialize_biases() # only run once - # print('Strides: %s' % m.stride.tolist()) - if isinstance(m, IAuxDetect): - s = 256 # 2x min stride - m.stride = torch.tensor([s / x.shape[-2] for x in self.forward(torch.zeros(1, ch, s, s))[:4]]) # forward - #print(m.stride) - m.anchors /= m.stride.view(-1, 1, 1) - check_anchor_order(m) - self.stride = m.stride - self._initialize_aux_biases() # only run once - # print('Strides: %s' % m.stride.tolist()) - if isinstance(m, IBin): - s = 256 # 2x min stride - m.stride = torch.tensor([s / x.shape[-2] for x in self.forward(torch.zeros(1, ch, s, s))]) # forward - m.anchors /= m.stride.view(-1, 1, 1) - check_anchor_order(m) - self.stride = m.stride - self._initialize_biases_bin() # only run once - # print('Strides: %s' % m.stride.tolist()) - if isinstance(m, IKeypoint): - s = 256 # 2x min stride - m.stride = torch.tensor([s / x.shape[-2] for x in self.forward(torch.zeros(1, ch, s, s))]) # forward - m.anchors /= m.stride.view(-1, 1, 1) - check_anchor_order(m) - self.stride = m.stride - self._initialize_biases_kpt() # only run once - # print('Strides: %s' % m.stride.tolist()) # Init weights, biases initialize_weights(self) self.info() - logger.info('') + print('') def forward(self, x, augment=False, profile=False): if augment: @@ -500,9 +99,9 @@ class Model(nn.Module): f = [None, 3, None] # flips (2-ud, 3-lr) y = [] # outputs for si, fi in zip(s, f): - xi = scale_img(x.flip(fi) if fi else x, si, gs=int(self.stride.max())) + xi = scale_img(x.flip(fi) if fi else x, si) yi = self.forward_once(xi)[0] # forward - # cv2.imwrite(f'img_{si}.jpg', 255 * xi[0].cpu().numpy().transpose((1, 2, 0))[:, :, ::-1]) # save + # cv2.imwrite('img%g.jpg' % s, 255 * xi[0].numpy().transpose((1, 2, 0))[:, :, ::-1]) # save yi[..., :4] /= si # de-scale if fi == 2: yi[..., 1] = img_size[0] - yi[..., 1] # de-flip ud @@ -519,26 +118,19 @@ class Model(nn.Module): if m.f != -1: # if not from previous layer x = y[m.f] if isinstance(m.f, int) else [x if j == -1 else y[j] for j in m.f] # from earlier layers - if not hasattr(self, 'traced'): - self.traced=False - - if self.traced: - if isinstance(m, Detect) or isinstance(m, IDetect) or isinstance(m, IAuxDetect) or isinstance(m, IKeypoint): - break - if profile: - c = isinstance(m, (Detect, IDetect, IAuxDetect, IBin)) - o = thop.profile(m, inputs=(x.copy() if c else x,), verbose=False)[0] / 1E9 * 2 if thop else 0 # FLOPS - for _ in range(10): - m(x.copy() if c else x) + try: + import thop + o = thop.profile(m, inputs=(x,), verbose=False)[0] / 1E9 * 2 # FLOPS + except: + o = 0 t = time_synchronized() for _ in range(10): - m(x.copy() if c else x) + _ = m(x) dt.append((time_synchronized() - t) * 100) print('%10.1f%10.0f%10.1fms %-40s' % (o, m.np, dt[-1], m.type)) x = m(x) # run - y.append(x if m.i in self.save else None) # save output if profile: @@ -546,52 +138,12 @@ class Model(nn.Module): return x def _initialize_biases(self, cf=None): # initialize biases into Detect(), cf is class frequency - # https://arxiv.org/abs/1708.02002 section 3.3 - # cf = torch.bincount(torch.tensor(np.concatenate(dataset.labels, 0)[:, 0]).long(), minlength=nc) + 1. - m = self.model[-1] # Detect() module - for mi, s in zip(m.m, m.stride): # from - b = mi.bias.view(m.na, -1) # conv.bias(255) to (3,85) - b.data[:, 4] += math.log(8 / (640 / s) ** 2) # obj (8 objects per 640 image) - b.data[:, 5:] += math.log(0.6 / (m.nc - 0.99)) if cf is None else torch.log(cf / cf.sum()) # cls - mi.bias = torch.nn.Parameter(b.view(-1), requires_grad=True) - - def _initialize_aux_biases(self, cf=None): # initialize biases into Detect(), cf is class frequency - # https://arxiv.org/abs/1708.02002 section 3.3 - # cf = torch.bincount(torch.tensor(np.concatenate(dataset.labels, 0)[:, 0]).long(), minlength=nc) + 1. - m = self.model[-1] # Detect() module - for mi, mi2, s in zip(m.m, m.m2, m.stride): # from - b = mi.bias.view(m.na, -1) # conv.bias(255) to (3,85) - b.data[:, 4] += math.log(8 / (640 / s) ** 2) # obj (8 objects per 640 image) - b.data[:, 5:] += math.log(0.6 / (m.nc - 0.99)) if cf is None else torch.log(cf / cf.sum()) # cls - mi.bias = torch.nn.Parameter(b.view(-1), requires_grad=True) - b2 = mi2.bias.view(m.na, -1) # conv.bias(255) to (3,85) - b2.data[:, 4] += math.log(8 / (640 / s) ** 2) # obj (8 objects per 640 image) - b2.data[:, 5:] += math.log(0.6 / (m.nc - 0.99)) if cf is None else torch.log(cf / cf.sum()) # cls - mi2.bias = torch.nn.Parameter(b2.view(-1), requires_grad=True) - - def _initialize_biases_bin(self, cf=None): # initialize biases into Detect(), cf is class frequency - # https://arxiv.org/abs/1708.02002 section 3.3 - # cf = torch.bincount(torch.tensor(np.concatenate(dataset.labels, 0)[:, 0]).long(), minlength=nc) + 1. - m = self.model[-1] # Bin() module - bc = m.bin_count - for mi, s in zip(m.m, m.stride): # from - b = mi.bias.view(m.na, -1) # conv.bias(255) to (3,85) - old = b[:, (0,1,2,bc+3)].data - obj_idx = 2*bc+4 - b[:, :obj_idx].data += math.log(0.6 / (bc + 1 - 0.99)) - b[:, obj_idx].data += math.log(8 / (640 / s) ** 2) # obj (8 objects per 640 image) - b[:, (obj_idx+1):].data += math.log(0.6 / (m.nc - 0.99)) if cf is None else torch.log(cf / cf.sum()) # cls - b[:, (0,1,2,bc+3)].data = old - mi.bias = torch.nn.Parameter(b.view(-1), requires_grad=True) - - def _initialize_biases_kpt(self, cf=None): # initialize biases into Detect(), cf is class frequency - # https://arxiv.org/abs/1708.02002 section 3.3 # cf = torch.bincount(torch.tensor(np.concatenate(dataset.labels, 0)[:, 0]).long(), minlength=nc) + 1. m = self.model[-1] # Detect() module for mi, s in zip(m.m, m.stride): # from b = mi.bias.view(m.na, -1) # conv.bias(255) to (3,85) - b.data[:, 4] += math.log(8 / (640 / s) ** 2) # obj (8 objects per 640 image) - b.data[:, 5:] += math.log(0.6 / (m.nc - 0.99)) if cf is None else torch.log(cf / cf.sum()) # cls + b[:, 4] += math.log(8 / (640 / s) ** 2) # obj (8 objects per 640 image) + b[:, 5:] += math.log(0.6 / (m.nc - 0.99)) if cf is None else torch.log(cf / cf.sum()) # cls mi.bias = torch.nn.Parameter(b.view(-1), requires_grad=True) def _print_biases(self): @@ -608,44 +160,16 @@ class Model(nn.Module): def fuse(self): # fuse model Conv2d() + BatchNorm2d() layers print('Fusing layers... ') for m in self.model.modules(): - if isinstance(m, RepConv): - #print(f" fuse_repvgg_block") - m.fuse_repvgg_block() - elif isinstance(m, RepConv_OREPA): - #print(f" switch_to_deploy") - m.switch_to_deploy() - elif type(m) is Conv and hasattr(m, 'bn'): + if type(m) is Conv: + m._non_persistent_buffers_set = set() # pytorch 1.6.0 compatability m.conv = fuse_conv_and_bn(m.conv, m.bn) # update conv - delattr(m, 'bn') # remove batchnorm + m.bn = None # remove batchnorm m.forward = m.fuseforward # update forward - elif isinstance(m, IDetect): - m.fuse() - m.forward = m.fuseforward self.info() return self - def nms(self, mode=True): # add or remove NMS module - present = type(self.model[-1]) is NMS # last layer is NMS - if mode and not present: - print('Adding NMS... ') - m = NMS() # module - m.f = -1 # from - m.i = self.model[-1].i + 1 # index - self.model.add_module(name='%s' % m.i, module=m) # add - self.eval() - elif not mode and present: - print('Removing NMS... ') - self.model = self.model[:-1] # remove - return self - - def autoshape(self): # add autoShape module - print('Adding autoShape... ') - m = autoShape(self) # wrap model - copy_attr(m, self, include=('yaml', 'nc', 'hyp', 'names', 'stride'), exclude=()) # copy attributes - return m - - def info(self, verbose=False, img_size=640): # print model information - model_info(self, verbose, img_size) + def info(self): # print model information + model_info(self) def parse_model(d, ch): # model_dict, input_channels(3) @@ -664,54 +188,39 @@ def parse_model(d, ch): # model_dict, input_channels(3) pass n = max(round(n * gd), 1) if n > 1 else n # depth gain - if m in [nn.Conv2d, Conv, RobustConv, RobustConv2, DWConv, GhostConv, RepConv, RepConv_OREPA, DownC, - SPP, SPPF, SPPCSPC, GhostSPPCSPC, MixConv2d, Focus, Stem, GhostStem, CrossConv, - Bottleneck, BottleneckCSPA, BottleneckCSPB, BottleneckCSPC, - RepBottleneck, RepBottleneckCSPA, RepBottleneckCSPB, RepBottleneckCSPC, - Res, ResCSPA, ResCSPB, ResCSPC, - RepRes, RepResCSPA, RepResCSPB, RepResCSPC, - ResX, ResXCSPA, ResXCSPB, ResXCSPC, - RepResX, RepResXCSPA, RepResXCSPB, RepResXCSPC, - Ghost, GhostCSPA, GhostCSPB, GhostCSPC, - SwinTransformerBlock, STCSPA, STCSPB, STCSPC, - SwinTransformer2Block, ST2CSPA, ST2CSPB, ST2CSPC]: + if m in [nn.Conv2d, Conv, Bottleneck, SPP, DWConv, MixConv2d, Focus, CrossConv, BottleneckCSP, C3]: c1, c2 = ch[f], args[0] - if c2 != no: # if not output - c2 = make_divisible(c2 * gw, 8) + + # Normal + # if i > 0 and args[0] != no: # channel expansion factor + # ex = 1.75 # exponential (default 2.0) + # e = math.log(c2 / ch[1]) / math.log(2) + # c2 = int(ch[1] * ex ** e) + # if m != Focus: + + c2 = make_divisible(c2 * gw, 8) if c2 != no else c2 + + # Experimental + # if i > 0 and args[0] != no: # channel expansion factor + # ex = 1 + gw # exponential (default 2.0) + # ch1 = 32 # ch[1] + # e = math.log(c2 / ch1) / math.log(2) # level 1-n + # c2 = int(ch1 * ex ** e) + # if m != Focus: + # c2 = make_divisible(c2, 8) if c2 != no else c2 args = [c1, c2, *args[1:]] - if m in [DownC, SPPCSPC, GhostSPPCSPC, - BottleneckCSPA, BottleneckCSPB, BottleneckCSPC, - RepBottleneckCSPA, RepBottleneckCSPB, RepBottleneckCSPC, - ResCSPA, ResCSPB, ResCSPC, - RepResCSPA, RepResCSPB, RepResCSPC, - ResXCSPA, ResXCSPB, ResXCSPC, - RepResXCSPA, RepResXCSPB, RepResXCSPC, - GhostCSPA, GhostCSPB, GhostCSPC, - STCSPA, STCSPB, STCSPC, - ST2CSPA, ST2CSPB, ST2CSPC]: - args.insert(2, n) # number of repeats + if m in [BottleneckCSP, C3]: + args.insert(2, n) n = 1 elif m is nn.BatchNorm2d: args = [ch[f]] elif m is Concat: - c2 = sum([ch[x] for x in f]) - elif m is Chuncat: - c2 = sum([ch[x] for x in f]) - elif m is Shortcut: - c2 = ch[f[0]] - elif m is Foldcut: - c2 = ch[f] // 2 - elif m in [Detect, IDetect, IAuxDetect, IBin, IKeypoint]: - args.append([ch[x] for x in f]) + c2 = sum([ch[-1 if x == -1 else x + 1] for x in f]) + elif m is Detect: + args.append([ch[x + 1] for x in f]) if isinstance(args[1], int): # number of anchors args[1] = [list(range(args[1] * 2))] * len(f) - elif m is ReOrg: - c2 = ch[f] * 4 - elif m is Contract: - c2 = ch[f] * args[0] ** 2 - elif m is Expand: - c2 = ch[f] // args[0] ** 2 else: c2 = ch[f] @@ -722,17 +231,14 @@ def parse_model(d, ch): # model_dict, input_channels(3) logger.info('%3s%18s%3s%10.0f %-40s%-30s' % (i, f, n, np, t, args)) # print save.extend(x % i for x in ([f] if isinstance(f, int) else f) if x != -1) # append to savelist layers.append(m_) - if i == 0: - ch = [] ch.append(c2) return nn.Sequential(*layers), sorted(save) if __name__ == '__main__': parser = argparse.ArgumentParser() - parser.add_argument('--cfg', type=str, default='yolor-csp-c.yaml', help='model.yaml') + parser.add_argument('--cfg', type=str, default='yolov5s.yaml', help='model.yaml') parser.add_argument('--device', default='', help='cuda device, i.e. 0 or 0,1,2,3 or cpu') - parser.add_argument('--profile', action='store_true', help='profile model speed') opt = parser.parse_args() opt.cfg = check_file(opt.cfg) # check file set_logging() @@ -741,15 +247,15 @@ if __name__ == '__main__': # Create model model = Model(opt.cfg).to(device) model.train() - - if opt.profile: - img = torch.rand(1, 3, 640, 640).to(device) - y = model(img, profile=True) # Profile # img = torch.rand(8 if torch.cuda.is_available() else 1, 3, 640, 640).to(device) # y = model(img, profile=True) + # ONNX export + # model.model[-1].export = True + # torch.onnx.export(model, img, opt.cfg.replace('.yaml', '.onnx'), verbose=True, opset_version=11) + # Tensorboard # from torch.utils.tensorboard import SummaryWriter # tb_writer = SummaryWriter() diff --git a/models/yolov5l.yaml b/models/yolov5l.yaml new file mode 100644 index 0000000..1309554 --- /dev/null +++ b/models/yolov5l.yaml @@ -0,0 +1,48 @@ +# parameters +nc: 80 # number of classes +depth_multiple: 1.0 # model depth multiple +width_multiple: 1.0 # layer channel multiple + +# anchors +anchors: + - [10,13, 16,30, 33,23] # P3/8 + - [30,61, 62,45, 59,119] # P4/16 + - [116,90, 156,198, 373,326] # P5/32 + +# YOLOv5 backbone +backbone: + # [from, number, module, args] + [[-1, 1, Focus, [64, 3]], # 0-P1/2 + [-1, 1, Conv, [128, 3, 2]], # 1-P2/4 + [-1, 3, BottleneckCSP, [128]], + [-1, 1, Conv, [256, 3, 2]], # 3-P3/8 + [-1, 9, BottleneckCSP, [256]], + [-1, 1, Conv, [512, 3, 2]], # 5-P4/16 + [-1, 9, BottleneckCSP, [512]], + [-1, 1, Conv, [1024, 3, 2]], # 7-P5/32 + [-1, 1, SPP, [1024, [5, 9, 13]]], + [-1, 3, BottleneckCSP, [1024, False]], # 9 + ] + +# YOLOv5 head +head: + [[-1, 1, Conv, [512, 1, 1]], + [-1, 1, nn.Upsample, [None, 2, 'nearest']], + [[-1, 6], 1, Concat, [1]], # cat backbone P4 + [-1, 3, BottleneckCSP, [512, False]], # 13 + + [-1, 1, Conv, [256, 1, 1]], + [-1, 1, nn.Upsample, [None, 2, 'nearest']], + [[-1, 4], 1, Concat, [1]], # cat backbone P3 + [-1, 3, BottleneckCSP, [256, False]], # 17 (P3/8-small) + + [-1, 1, Conv, [256, 3, 2]], + [[-1, 14], 1, Concat, [1]], # cat head P4 + [-1, 3, BottleneckCSP, [512, False]], # 20 (P4/16-medium) + + [-1, 1, Conv, [512, 3, 2]], + [[-1, 10], 1, Concat, [1]], # cat head P5 + [-1, 3, BottleneckCSP, [1024, False]], # 23 (P5/32-large) + + [[17, 20, 23], 1, Detect, [nc, anchors]], # Detect(P3, P4, P5) + ] diff --git a/models/yolov5m.yaml b/models/yolov5m.yaml new file mode 100644 index 0000000..eb50a71 --- /dev/null +++ b/models/yolov5m.yaml @@ -0,0 +1,48 @@ +# parameters +nc: 80 # number of classes +depth_multiple: 0.67 # model depth multiple +width_multiple: 0.75 # layer channel multiple + +# anchors +anchors: + - [10,13, 16,30, 33,23] # P3/8 + - [30,61, 62,45, 59,119] # P4/16 + - [116,90, 156,198, 373,326] # P5/32 + +# YOLOv5 backbone +backbone: + # [from, number, module, args] + [[-1, 1, Focus, [64, 3]], # 0-P1/2 + [-1, 1, Conv, [128, 3, 2]], # 1-P2/4 + [-1, 3, BottleneckCSP, [128]], + [-1, 1, Conv, [256, 3, 2]], # 3-P3/8 + [-1, 9, BottleneckCSP, [256]], + [-1, 1, Conv, [512, 3, 2]], # 5-P4/16 + [-1, 9, BottleneckCSP, [512]], + [-1, 1, Conv, [1024, 3, 2]], # 7-P5/32 + [-1, 1, SPP, [1024, [5, 9, 13]]], + [-1, 3, BottleneckCSP, [1024, False]], # 9 + ] + +# YOLOv5 head +head: + [[-1, 1, Conv, [512, 1, 1]], + [-1, 1, nn.Upsample, [None, 2, 'nearest']], + [[-1, 6], 1, Concat, [1]], # cat backbone P4 + [-1, 3, BottleneckCSP, [512, False]], # 13 + + [-1, 1, Conv, [256, 1, 1]], + [-1, 1, nn.Upsample, [None, 2, 'nearest']], + [[-1, 4], 1, Concat, [1]], # cat backbone P3 + [-1, 3, BottleneckCSP, [256, False]], # 17 (P3/8-small) + + [-1, 1, Conv, [256, 3, 2]], + [[-1, 14], 1, Concat, [1]], # cat head P4 + [-1, 3, BottleneckCSP, [512, False]], # 20 (P4/16-medium) + + [-1, 1, Conv, [512, 3, 2]], + [[-1, 10], 1, Concat, [1]], # cat head P5 + [-1, 3, BottleneckCSP, [1024, False]], # 23 (P5/32-large) + + [[17, 20, 23], 1, Detect, [nc, anchors]], # Detect(P3, P4, P5) + ] diff --git a/models/yolov5s.yaml b/models/yolov5s.yaml new file mode 100644 index 0000000..2bec452 --- /dev/null +++ b/models/yolov5s.yaml @@ -0,0 +1,48 @@ +# parameters +nc: 80 # number of classes +depth_multiple: 0.33 # model depth multiple +width_multiple: 0.50 # layer channel multiple + +# anchors +anchors: + - [10,13, 16,30, 33,23] # P3/8 + - [30,61, 62,45, 59,119] # P4/16 + - [116,90, 156,198, 373,326] # P5/32 + +# YOLOv5 backbone +backbone: + # [from, number, module, args] + [[-1, 1, Focus, [64, 3]], # 0-P1/2 + [-1, 1, Conv, [128, 3, 2]], # 1-P2/4 + [-1, 3, BottleneckCSP, [128]], + [-1, 1, Conv, [256, 3, 2]], # 3-P3/8 + [-1, 9, BottleneckCSP, [256]], + [-1, 1, Conv, [512, 3, 2]], # 5-P4/16 + [-1, 9, BottleneckCSP, [512]], + [-1, 1, Conv, [1024, 3, 2]], # 7-P5/32 + [-1, 1, SPP, [1024, [5, 9, 13]]], + [-1, 3, BottleneckCSP, [1024, False]], # 9 + ] + +# YOLOv5 head +head: + [[-1, 1, Conv, [512, 1, 1]], + [-1, 1, nn.Upsample, [None, 2, 'nearest']], + [[-1, 6], 1, Concat, [1]], # cat backbone P4 + [-1, 3, BottleneckCSP, [512, False]], # 13 + + [-1, 1, Conv, [256, 1, 1]], + [-1, 1, nn.Upsample, [None, 2, 'nearest']], + [[-1, 4], 1, Concat, [1]], # cat backbone P3 + [-1, 3, BottleneckCSP, [256, False]], # 17 (P3/8-small) + + [-1, 1, Conv, [256, 3, 2]], + [[-1, 14], 1, Concat, [1]], # cat head P4 + [-1, 3, BottleneckCSP, [512, False]], # 20 (P4/16-medium) + + [-1, 1, Conv, [512, 3, 2]], + [[-1, 10], 1, Concat, [1]], # cat head P5 + [-1, 3, BottleneckCSP, [1024, False]], # 23 (P5/32-large) + + [[17, 20, 23], 1, Detect, [nc, anchors]], # Detect(P3, P4, P5) + ] diff --git a/models/yolov5x.yaml b/models/yolov5x.yaml new file mode 100644 index 0000000..9676402 --- /dev/null +++ b/models/yolov5x.yaml @@ -0,0 +1,48 @@ +# parameters +nc: 80 # number of classes +depth_multiple: 1.33 # model depth multiple +width_multiple: 1.25 # layer channel multiple + +# anchors +anchors: + - [10,13, 16,30, 33,23] # P3/8 + - [30,61, 62,45, 59,119] # P4/16 + - [116,90, 156,198, 373,326] # P5/32 + +# YOLOv5 backbone +backbone: + # [from, number, module, args] + [[-1, 1, Focus, [64, 3]], # 0-P1/2 + [-1, 1, Conv, [128, 3, 2]], # 1-P2/4 + [-1, 3, BottleneckCSP, [128]], + [-1, 1, Conv, [256, 3, 2]], # 3-P3/8 + [-1, 9, BottleneckCSP, [256]], + [-1, 1, Conv, [512, 3, 2]], # 5-P4/16 + [-1, 9, BottleneckCSP, [512]], + [-1, 1, Conv, [1024, 3, 2]], # 7-P5/32 + [-1, 1, SPP, [1024, [5, 9, 13]]], + [-1, 3, BottleneckCSP, [1024, False]], # 9 + ] + +# YOLOv5 head +head: + [[-1, 1, Conv, [512, 1, 1]], + [-1, 1, nn.Upsample, [None, 2, 'nearest']], + [[-1, 6], 1, Concat, [1]], # cat backbone P4 + [-1, 3, BottleneckCSP, [512, False]], # 13 + + [-1, 1, Conv, [256, 1, 1]], + [-1, 1, nn.Upsample, [None, 2, 'nearest']], + [[-1, 4], 1, Concat, [1]], # cat backbone P3 + [-1, 3, BottleneckCSP, [256, False]], # 17 (P3/8-small) + + [-1, 1, Conv, [256, 3, 2]], + [[-1, 14], 1, Concat, [1]], # cat head P4 + [-1, 3, BottleneckCSP, [512, False]], # 20 (P4/16-medium) + + [-1, 1, Conv, [512, 3, 2]], + [[-1, 10], 1, Concat, [1]], # cat head P5 + [-1, 3, BottleneckCSP, [1024, False]], # 23 (P5/32-large) + + [[17, 20, 23], 1, Detect, [nc, anchors]], # Detect(P3, P4, P5) + ] diff --git a/question_linjie.md b/question_linjie.md new file mode 100644 index 0000000..8750dd8 --- /dev/null +++ b/question_linjie.md @@ -0,0 +1,2 @@ +1、解决OMP: Error #15: Initializing libiomp5.dylib, but found libiomp5.dylib already initialized. #1715 +https://github.com/dmlc/xgboost/issues/1715(you can run this comment conda install nomkl) \ No newline at end of file diff --git a/requirements.txt b/requirements.txt index 6b71f21..c227592 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,39 +1,53 @@ -# Usage: pip install -r requirements.txt - -# Base ---------------------------------------- -matplotlib>=3.2.2 -numpy>=1.18.5 -opencv-python>=4.1.1 -Pillow>=7.1.2 -PyYAML>=5.3.1 -requests>=2.23.0 -scipy>=1.4.1 -torch>=1.7.0,!=1.12.0 -torchvision>=0.8.1,!=0.13.0 -tqdm>=4.41.0 -protobuf<4.21.3 - -# Logging ------------------------------------- -tensorboard>=2.4.1 -# wandb - -# Plotting ------------------------------------ -pandas>=1.1.4 -seaborn>=0.11.0 - -# Export -------------------------------------- -# coremltools>=4.1 # CoreML export -# onnx>=1.9.0 # ONNX export -# onnx-simplifier>=0.3.6 # ONNX simplifier -# scikit-learn==0.19.2 # CoreML quantization -# tensorflow>=2.4.1 # TFLite export -# tensorflowjs>=3.9.0 # TF.js export -# openvino-dev # OpenVINO export - -# Extras -------------------------------------- -ipython # interactive notebook -psutil # system utilization -thop # FLOPs computation -# albumentations>=1.0.3 -# pycocotools>=2.0 # COCO mAP -# roboflow +absl-py==0.11.0 +cachetools==4.2.0 +certifi==2020.12.5 +chardet==4.0.0 +click==7.1.2 +cycler==0.10.0 +Cython==0.29.21 +easydict==1.9 +Flask==1.1.2 +Flask-Cors==3.0.10 +future==0.18.2 +google-auth==1.24.0 +google-auth-oauthlib==0.4.2 +grpcio==1.34.0 +idna==2.10 +importlib-metadata==3.3.0 +imutils==0.5.4 +itsdangerous==1.1.0 +Jinja2==2.11.2 +kiwisolver==1.3.1 +Markdown==3.3.3 +MarkupSafe==1.1.1 +matplotlib==3.3.3 +mkl-service==2.3.0 +numpy==1.19.4 +oauthlib==3.1.0 +olefile==0.46 +opencv-python==4.4.0.46 +pandas==1.2.0 +Pillow @ file:///opt/concourse/worker/volumes/live/dfab893a-afa4-4cd2-5a7e-fb894890ea44/volume/pillow_1609786793862/work +protobuf==3.14.0 +pyasn1==0.4.8 +pyasn1-modules==0.2.8 +pyparsing==2.4.7 +python-dateutil==2.8.1 +pytz @ file:///tmp/build/80754af9/pytz_1608922264688/work +PyYAML==5.3.1 +requests==2.25.1 +requests-oauthlib==1.3.0 +rsa==4.6 +scipy==1.5.4 +seaborn @ file:///tmp/build/80754af9/seaborn_1608578541026/work +six @ file:///opt/concourse/worker/volumes/live/f983ba11-c9fe-4dff-7ce7-d89b95b09771/volume/six_1605205318156/work +tensorboard==2.4.0 +tensorboard-plugin-wit==1.7.0 +torch==1.6.0 +torchvision==0.7.0 +tornado @ file:///opt/concourse/worker/volumes/live/d531d395-893c-4ca1-6a5f-717b318eb08c/volume/tornado_1606942307627/work +tqdm==4.55.0 +typing-extensions==3.7.4.3 +urllib3==1.26.2 +Werkzeug==1.0.1 +zipp==3.4.0 diff --git a/runs/exp0_yolov5s_results/events.out.tfevents.1597502075.28b44c60beac.274.0 b/runs/exp0_yolov5s_results/events.out.tfevents.1597502075.28b44c60beac.274.0 new file mode 100644 index 0000000..e262451 Binary files /dev/null and b/runs/exp0_yolov5s_results/events.out.tfevents.1597502075.28b44c60beac.274.0 differ diff --git a/runs/exp0_yolov5s_results/hyp.yaml b/runs/exp0_yolov5s_results/hyp.yaml new file mode 100644 index 0000000..7053b6a --- /dev/null +++ b/runs/exp0_yolov5s_results/hyp.yaml @@ -0,0 +1,22 @@ +lr0: 0.01 +momentum: 0.937 +weight_decay: 0.0005 +giou: 0.05 +cls: 0.5 +cls_pw: 1.0 +obj: 1.0 +obj_pw: 1.0 +iou_t: 0.2 +anchor_t: 4.0 +fl_gamma: 0.0 +hsv_h: 0.015 +hsv_s: 0.7 +hsv_v: 0.4 +degrees: 0.0 +translate: 0.1 +scale: 0.5 +shear: 0.0 +perspective: 0.0 +flipud: 0.0 +fliplr: 0.5 +mixup: 0.0 diff --git a/runs/exp0_yolov5s_results/labels.png b/runs/exp0_yolov5s_results/labels.png new file mode 100644 index 0000000..718279c Binary files /dev/null and b/runs/exp0_yolov5s_results/labels.png differ diff --git a/runs/exp0_yolov5s_results/opt.yaml b/runs/exp0_yolov5s_results/opt.yaml new file mode 100644 index 0000000..125b621 --- /dev/null +++ b/runs/exp0_yolov5s_results/opt.yaml @@ -0,0 +1,29 @@ +weights: '' +cfg: ./models/custom_yolov5s.yaml +data: ../data.yaml +hyp: data/hyp.scratch.yaml +epochs: 100 +batch_size: 16 +img_size: +- 416 +- 416 +rect: false +resume: false +nosave: false +notest: false +noautoanchor: false +evolve: false +bucket: '' +cache_images: true +name: yolov5s_results +device: '' +multi_scale: false +single_cls: false +adam: false +sync_bn: false +local_rank: -1 +logdir: runs/ +workers: 8 +total_batch_size: 16 +world_size: 1 +global_rank: -1 diff --git a/runs/exp0_yolov5s_results/results.png b/runs/exp0_yolov5s_results/results.png new file mode 100644 index 0000000..bd4d371 Binary files /dev/null and b/runs/exp0_yolov5s_results/results.png differ diff --git a/runs/exp0_yolov5s_results/results.txt b/runs/exp0_yolov5s_results/results.txt new file mode 100644 index 0000000..4922152 --- /dev/null +++ b/runs/exp0_yolov5s_results/results.txt @@ -0,0 +1,100 @@ + 0/99 0.818G 0.1051 0.0993 0.04202 0.2465 4 416 0 0 9.979e-05 1.951e-05 0.09541 0.09692 0.03674 + 1/99 1.75G 0.1 0.1035 0.03373 0.2373 5 416 0 0 0.0002236 5.12e-05 0.093 0.09837 0.03105 + 2/99 1.75G 0.0987 0.1062 0.02956 0.2344 5 416 0 0 0.0001438 2.715e-05 0.09302 0.09839 0.02818 + 3/99 1.75G 0.098 0.1077 0.02759 0.2333 7 416 0 0 0.0001659 2.707e-05 0.09327 0.09852 0.02675 + 4/99 1.75G 0.0984 0.1056 0.02681 0.2308 11 416 0 0 0.0001537 2.492e-05 0.09321 0.09841 0.02614 + 5/99 1.75G 0.0966 0.1021 0.02687 0.2256 1 416 0 0 0.0002124 3.389e-05 0.09237 0.09895 0.02553 + 6/99 1.75G 0.09695 0.103 0.02689 0.2268 6 416 0 0 0.0002453 4.133e-05 0.09112 0.1004 0.02501 + 7/99 1.75G 0.09501 0.1048 0.02534 0.2251 1 416 0 0 0.0004797 8.585e-05 0.09011 0.1006 0.02473 + 8/99 1.75G 0.09071 0.1085 0.0243 0.2235 2 416 0.1019 0.004179 0.01663 0.004201 0.08854 0.09586 0.0247 + 9/99 1.75G 0.08892 0.1053 0.02413 0.2183 3 416 0.01511 0.1007 0.02532 0.004991 0.08578 0.09395 0.02348 + 10/99 1.75G 0.08442 0.1007 0.02409 0.2092 12 416 0.01605 0.1653 0.06096 0.0142 0.07826 0.09144 0.02306 + 11/99 1.75G 0.07869 0.09681 0.02443 0.1999 5 416 0.01206 0.1979 0.07146 0.01714 0.07351 0.1005 0.02379 + 12/99 1.75G 0.07434 0.09279 0.02343 0.1906 2 416 0.01313 0.1949 0.08542 0.02253 0.06824 0.1086 0.02287 + 13/99 1.75G 0.07468 0.09729 0.02328 0.1952 31 416 0.02193 0.1862 0.1001 0.03079 0.06772 0.08455 0.02273 + 14/99 1.75G 0.07122 0.09196 0.02363 0.1868 4 416 0.02996 0.1695 0.06258 0.01461 0.07538 0.07644 0.02288 + 15/99 1.75G 0.07022 0.08274 0.02388 0.1768 1 416 0.0381 0.1725 0.1098 0.03689 0.06893 0.07818 0.02229 + 16/99 1.75G 0.06885 0.08669 0.0232 0.1787 9 416 0.05281 0.1391 0.1051 0.03715 0.07613 0.07683 0.02196 + 17/99 1.75G 0.06731 0.08431 0.02259 0.1742 8 416 0.04363 0.2071 0.1424 0.04951 0.05855 0.07328 0.02113 + 18/99 1.75G 0.06497 0.08066 0.02397 0.1696 1 416 0.07285 0.202 0.1671 0.06702 0.05551 0.06861 0.0208 + 19/99 1.75G 0.06294 0.0803 0.02299 0.1662 7 416 0.1019 0.2264 0.1838 0.07044 0.05542 0.0723 0.02018 + 20/99 1.75G 0.06083 0.0812 0.02185 0.1639 6 416 0.2132 0.2256 0.2083 0.07419 0.05502 0.06501 0.01972 + 21/99 1.75G 0.06023 0.08224 0.01975 0.1622 7 416 0.09866 0.2309 0.1689 0.06365 0.0578 0.06518 0.01854 + 22/99 1.75G 0.06341 0.08153 0.0196 0.1645 9 416 0.07756 0.2669 0.1596 0.05427 0.06156 0.0685 0.01882 + 23/99 1.75G 0.06074 0.07944 0.01923 0.1594 3 416 0.1225 0.2619 0.1736 0.07113 0.05424 0.0667 0.01832 + 24/99 1.75G 0.0598 0.0762 0.01979 0.1558 3 416 0.1108 0.3352 0.2366 0.0986 0.05208 0.0616 0.01693 + 25/99 1.75G 0.05739 0.07768 0.01861 0.1537 1 416 0.1402 0.2955 0.2492 0.09939 0.05056 0.06239 0.01526 + 26/99 1.75G 0.05932 0.07581 0.01819 0.1533 4 416 0.104 0.3599 0.2753 0.1038 0.05245 0.06746 0.01571 + 27/99 1.75G 0.05585 0.0781 0.01861 0.1526 6 416 0.1136 0.3475 0.2567 0.1031 0.05103 0.06619 0.01737 + 28/99 1.75G 0.05627 0.0771 0.01738 0.1508 6 416 0.101 0.3594 0.2676 0.1105 0.05107 0.08393 0.01583 + 29/99 1.75G 0.05365 0.07386 0.01779 0.1453 2 416 0.1715 0.3445 0.2826 0.1139 0.05148 0.06268 0.01605 + 30/99 1.75G 0.0527 0.07898 0.01627 0.148 16 416 0.1426 0.3079 0.2479 0.09602 0.05252 0.06668 0.01477 + 31/99 1.75G 0.05429 0.07398 0.01743 0.1457 3 416 0.1621 0.3866 0.3355 0.1493 0.04524 0.06023 0.01505 + 32/99 1.75G 0.05026 0.07543 0.01755 0.1432 1 416 0.2091 0.3451 0.3181 0.1442 0.04452 0.0587 0.01452 + 33/99 1.75G 0.0502 0.07166 0.01634 0.1382 7 416 0.1968 0.3685 0.3457 0.1588 0.04359 0.05798 0.01484 + 34/99 1.75G 0.05063 0.06916 0.01619 0.136 12 416 0.2201 0.3574 0.3322 0.1662 0.04162 0.05695 0.01425 + 35/99 1.75G 0.04832 0.07193 0.01748 0.1377 6 416 0.206 0.3736 0.3573 0.1734 0.04114 0.05607 0.01312 + 36/99 1.75G 0.04868 0.06968 0.01615 0.1345 4 416 0.4341 0.3982 0.3744 0.1766 0.04231 0.06043 0.01329 + 37/99 1.75G 0.04672 0.06856 0.01426 0.1295 4 416 0.09281 0.4006 0.3316 0.1427 0.04392 0.06453 0.01322 + 38/99 1.75G 0.04631 0.06799 0.01624 0.1305 2 416 0.2651 0.3759 0.3755 0.1741 0.04167 0.05595 0.01259 + 39/99 1.75G 0.04569 0.06794 0.01548 0.1291 10 416 0.2165 0.3814 0.3617 0.1729 0.04239 0.05536 0.01279 + 40/99 1.75G 0.04661 0.07006 0.01756 0.1342 7 416 0.1679 0.3971 0.36 0.1729 0.03997 0.05569 0.01324 + 41/99 1.75G 0.0445 0.06147 0.01588 0.1219 2 416 0.252 0.3768 0.3624 0.179 0.04061 0.05404 0.01351 + 42/99 1.75G 0.04454 0.07259 0.01618 0.1333 3 416 0.238 0.3917 0.3762 0.179 0.04028 0.05345 0.01368 + 43/99 1.75G 0.04485 0.06681 0.01601 0.1277 2 416 0.2048 0.3999 0.3962 0.1941 0.03958 0.05322 0.01229 + 44/99 1.75G 0.044 0.06464 0.01653 0.1252 2 416 0.2429 0.3943 0.3685 0.1843 0.03906 0.05349 0.013 + 45/99 1.75G 0.04172 0.06547 0.01462 0.1218 8 416 0.2454 0.3976 0.3952 0.201 0.03773 0.05163 0.0125 + 46/99 1.75G 0.04275 0.06855 0.01621 0.1275 6 416 0.2601 0.4058 0.3905 0.1902 0.03879 0.05226 0.01247 + 47/99 1.75G 0.04101 0.06613 0.01488 0.122 5 416 0.1775 0.4193 0.3892 0.1993 0.03755 0.05663 0.01295 + 48/99 1.75G 0.04235 0.06652 0.01544 0.1243 16 416 0.2562 0.3865 0.3797 0.1878 0.03918 0.05404 0.0128 + 49/99 1.75G 0.04113 0.06549 0.01536 0.122 7 416 0.2634 0.3956 0.3944 0.2105 0.03687 0.05161 0.01207 + 50/99 1.75G 0.04182 0.06407 0.01438 0.1203 5 416 0.2409 0.4059 0.3952 0.2069 0.0374 0.05225 0.01202 + 51/99 1.75G 0.0407 0.06189 0.01598 0.1186 6 416 0.2362 0.4163 0.3792 0.1916 0.03767 0.05152 0.01226 + 52/99 1.75G 0.04061 0.06706 0.01356 0.1212 9 416 0.2614 0.4617 0.3977 0.2046 0.03601 0.05113 0.01209 + 53/99 1.75G 0.04056 0.06486 0.01443 0.1199 9 416 0.2372 0.4175 0.4066 0.2035 0.03729 0.05225 0.012 + 54/99 1.75G 0.04084 0.06311 0.01424 0.1182 7 416 0.2554 0.4051 0.3984 0.2034 0.03688 0.0519 0.01199 + 55/99 1.75G 0.03878 0.06249 0.01657 0.1178 1 416 0.2457 0.4019 0.3948 0.2076 0.03658 0.05107 0.01211 + 56/99 1.75G 0.03931 0.06632 0.014 0.1196 7 416 0.2512 0.4158 0.4072 0.2113 0.0356 0.04984 0.01179 + 57/99 1.75G 0.03899 0.06165 0.0158 0.1164 6 416 0.2473 0.4094 0.4014 0.2068 0.03547 0.04964 0.01167 + 58/99 1.75G 0.04016 0.05988 0.01485 0.1149 1 416 0.2792 0.4263 0.407 0.2006 0.03667 0.04935 0.01165 + 59/99 1.75G 0.03973 0.06346 0.01475 0.1179 10 416 0.2794 0.4147 0.3987 0.2061 0.03612 0.0501 0.01171 + 60/99 1.75G 0.03997 0.06665 0.01601 0.1226 29 416 0.2659 0.4045 0.4079 0.2102 0.03602 0.05029 0.01179 + 61/99 1.75G 0.03832 0.06163 0.0145 0.1145 7 416 0.2644 0.4781 0.418 0.2217 0.03505 0.04973 0.01182 + 62/99 1.75G 0.03853 0.06352 0.01517 0.1172 4 416 0.2883 0.4245 0.4036 0.2158 0.03445 0.04945 0.01213 + 63/99 1.75G 0.03746 0.05549 0.01468 0.1076 3 416 0.2249 0.4308 0.4084 0.2135 0.03553 0.05009 0.01153 + 64/99 1.75G 0.03877 0.06516 0.01514 0.1191 4 416 0.2739 0.4117 0.4061 0.2175 0.03529 0.04933 0.01189 + 65/99 1.75G 0.03729 0.06213 0.01371 0.1131 6 416 0.2613 0.4691 0.4054 0.2162 0.03469 0.05031 0.01228 + 66/99 1.75G 0.03675 0.0597 0.01336 0.1098 5 416 0.2609 0.4686 0.41 0.2237 0.03463 0.04947 0.0117 + 67/99 1.75G 0.03672 0.06083 0.0128 0.1104 5 416 0.2913 0.4087 0.4019 0.2156 0.03501 0.0489 0.01171 + 68/99 1.75G 0.03739 0.06074 0.01423 0.1124 6 416 0.2906 0.4134 0.4054 0.216 0.03527 0.04997 0.01167 + 69/99 1.75G 0.038 0.05938 0.01287 0.1102 1 416 0.3026 0.4387 0.4126 0.2229 0.03412 0.04877 0.01133 + 70/99 1.75G 0.03741 0.05859 0.01476 0.1108 6 416 0.3125 0.444 0.4181 0.2302 0.03414 0.04816 0.01162 + 71/99 1.75G 0.03617 0.05803 0.01391 0.1081 13 416 0.2586 0.4328 0.4127 0.2275 0.03419 0.04837 0.01156 + 72/99 1.75G 0.03633 0.0574 0.01451 0.1082 1 416 0.2904 0.4661 0.4218 0.2255 0.03398 0.04815 0.01116 + 73/99 1.75G 0.03587 0.0614 0.01404 0.1113 11 416 0.3131 0.4955 0.4315 0.2301 0.03465 0.0493 0.01101 + 74/99 1.75G 0.03585 0.05827 0.01242 0.1065 2 416 0.3433 0.4464 0.4121 0.2212 0.03461 0.04973 0.01109 + 75/99 1.75G 0.03543 0.05945 0.01443 0.1093 18 416 0.232 0.4735 0.4212 0.2296 0.03364 0.04982 0.01147 + 76/99 1.75G 0.03512 0.05721 0.01301 0.1053 1 416 0.3413 0.4562 0.4157 0.2287 0.03405 0.04858 0.01166 + 77/99 1.75G 0.03505 0.05524 0.01411 0.1044 2 416 0.2936 0.4643 0.4245 0.2284 0.03366 0.04792 0.01182 + 78/99 1.75G 0.03503 0.06007 0.01401 0.1091 0 416 0.3078 0.5056 0.4298 0.2393 0.03355 0.04832 0.01126 + 79/99 1.75G 0.03478 0.05634 0.01311 0.1042 11 416 0.2704 0.4721 0.4318 0.2338 0.03397 0.04805 0.01157 + 80/99 1.75G 0.03458 0.05888 0.01216 0.1056 7 416 0.2889 0.4982 0.4126 0.2261 0.03355 0.04856 0.01153 + 81/99 1.75G 0.03473 0.05671 0.01471 0.1062 8 416 0.3387 0.4987 0.4296 0.2392 0.03301 0.04717 0.01127 + 82/99 1.75G 0.03507 0.05646 0.01404 0.1056 3 416 0.3235 0.4977 0.4359 0.2371 0.03349 0.04757 0.01105 + 83/99 1.75G 0.03627 0.05872 0.01351 0.1085 13 416 0.3078 0.4387 0.4268 0.2275 0.03401 0.04804 0.01138 + 84/99 1.75G 0.03401 0.05447 0.01246 0.1009 2 416 0.3523 0.4656 0.4324 0.2362 0.03328 0.04715 0.0113 + 85/99 1.75G 0.03596 0.06059 0.01336 0.1099 21 416 0.3025 0.4784 0.4349 0.2323 0.0341 0.04803 0.01151 + 86/99 1.75G 0.03487 0.0556 0.0121 0.1026 2 416 0.3093 0.5257 0.4378 0.2414 0.03285 0.04728 0.01155 + 87/99 1.75G 0.03576 0.05583 0.01318 0.1048 2 416 0.3316 0.5054 0.4333 0.2404 0.03336 0.04815 0.01134 + 88/99 1.75G 0.03326 0.05242 0.0117 0.09739 1 416 0.3 0.5175 0.4413 0.2361 0.03338 0.04762 0.01133 + 89/99 1.75G 0.0347 0.07178 0.01274 0.1192 35 416 0.326 0.4998 0.4441 0.2496 0.03299 0.04751 0.01162 + 90/99 1.75G 0.0346 0.05416 0.014 0.1028 1 416 0.3179 0.4969 0.4393 0.2414 0.03353 0.0473 0.01117 + 91/99 1.75G 0.03416 0.05606 0.01249 0.1027 9 416 0.3132 0.472 0.4401 0.2497 0.03316 0.04746 0.01108 + 92/99 1.75G 0.03459 0.05376 0.01368 0.102 3 416 0.3178 0.4931 0.443 0.2491 0.03299 0.04662 0.01106 + 93/99 1.75G 0.03424 0.05617 0.01264 0.1031 13 416 0.3334 0.4857 0.4372 0.249 0.03297 0.0475 0.01111 + 94/99 1.75G 0.03373 0.05539 0.01251 0.1016 9 416 0.3259 0.4905 0.4497 0.2487 0.03324 0.04697 0.01124 + 95/99 1.75G 0.03456 0.05723 0.01195 0.1037 5 416 0.2938 0.4871 0.4341 0.2385 0.03338 0.04777 0.01131 + 96/99 1.75G 0.03431 0.05213 0.01138 0.09782 1 416 0.3164 0.5012 0.4365 0.2488 0.033 0.04728 0.01123 + 97/99 1.75G 0.03469 0.05874 0.01236 0.1058 10 416 0.3307 0.5194 0.4352 0.2443 0.03303 0.04825 0.01123 + 98/99 1.75G 0.03302 0.05327 0.01271 0.099 0 416 0.3363 0.5128 0.4354 0.2405 0.03337 0.04736 0.01128 + 99/99 1.75G 0.03466 0.0555 0.01229 0.1024 9 416 0.3702 0.502 0.4413 0.2539 0.0333 0.04745 0.0111 diff --git a/runs/exp0_yolov5s_results/test_batch0_gt.jpg b/runs/exp0_yolov5s_results/test_batch0_gt.jpg new file mode 100644 index 0000000..0c24301 Binary files /dev/null and b/runs/exp0_yolov5s_results/test_batch0_gt.jpg differ diff --git a/runs/exp0_yolov5s_results/test_batch0_pred.jpg b/runs/exp0_yolov5s_results/test_batch0_pred.jpg new file mode 100644 index 0000000..b8545a6 Binary files /dev/null and b/runs/exp0_yolov5s_results/test_batch0_pred.jpg differ diff --git a/runs/exp0_yolov5s_results/train_batch0.jpg b/runs/exp0_yolov5s_results/train_batch0.jpg new file mode 100644 index 0000000..53708cf Binary files /dev/null and b/runs/exp0_yolov5s_results/train_batch0.jpg differ diff --git a/runs/exp0_yolov5s_results/train_batch1.jpg b/runs/exp0_yolov5s_results/train_batch1.jpg new file mode 100644 index 0000000..1246177 Binary files /dev/null and b/runs/exp0_yolov5s_results/train_batch1.jpg differ diff --git a/runs/exp0_yolov5s_results/train_batch2.jpg b/runs/exp0_yolov5s_results/train_batch2.jpg new file mode 100644 index 0000000..8adb965 Binary files /dev/null and b/runs/exp0_yolov5s_results/train_batch2.jpg differ diff --git a/runs/exp0_yolov5s_results/weights/best_yolov5s_results.pt b/runs/exp0_yolov5s_results/weights/best_yolov5s_results.pt new file mode 100644 index 0000000..32e0083 Binary files /dev/null and b/runs/exp0_yolov5s_results/weights/best_yolov5s_results.pt differ diff --git a/runs/exp0_yolov5s_results/weights/last_yolov5s_results.pt b/runs/exp0_yolov5s_results/weights/last_yolov5s_results.pt new file mode 100644 index 0000000..fffb874 Binary files /dev/null and b/runs/exp0_yolov5s_results/weights/last_yolov5s_results.pt differ diff --git a/runs/exp1/events.out.tfevents.1665832505.Luffy.16856.0 b/runs/exp1/events.out.tfevents.1665832505.Luffy.16856.0 new file mode 100644 index 0000000..49c3d30 Binary files /dev/null and b/runs/exp1/events.out.tfevents.1665832505.Luffy.16856.0 differ diff --git a/runs/exp1/hyp.yaml b/runs/exp1/hyp.yaml new file mode 100644 index 0000000..7053b6a --- /dev/null +++ b/runs/exp1/hyp.yaml @@ -0,0 +1,22 @@ +lr0: 0.01 +momentum: 0.937 +weight_decay: 0.0005 +giou: 0.05 +cls: 0.5 +cls_pw: 1.0 +obj: 1.0 +obj_pw: 1.0 +iou_t: 0.2 +anchor_t: 4.0 +fl_gamma: 0.0 +hsv_h: 0.015 +hsv_s: 0.7 +hsv_v: 0.4 +degrees: 0.0 +translate: 0.1 +scale: 0.5 +shear: 0.0 +perspective: 0.0 +flipud: 0.0 +fliplr: 0.5 +mixup: 0.0 diff --git a/runs/exp1/opt.yaml b/runs/exp1/opt.yaml new file mode 100644 index 0000000..48d50a4 --- /dev/null +++ b/runs/exp1/opt.yaml @@ -0,0 +1,29 @@ +weights: yolov5s.pt +cfg: '' +data: .\data\voc.yaml +hyp: data/hyp.finetune.yaml +epochs: 300 +batch_size: 16 +img_size: +- 640 +- 640 +rect: false +resume: false +nosave: false +notest: false +noautoanchor: false +evolve: false +bucket: '' +cache_images: false +name: '' +device: '' +multi_scale: false +single_cls: false +adam: false +sync_bn: false +local_rank: -1 +logdir: runs/ +workers: 8 +total_batch_size: 16 +world_size: 1 +global_rank: -1 diff --git a/templates/about.html b/templates/about.html new file mode 100644 index 0000000..0de6f6e --- /dev/null +++ b/templates/about.html @@ -0,0 +1,8 @@ +{% extends "layout.html" %} + +{% block content %} + +

Instructions

+

Add instructions here

+ +{% endblock %} \ No newline at end of file diff --git a/templates/index.html b/templates/index.html new file mode 100644 index 0000000..603715b --- /dev/null +++ b/templates/index.html @@ -0,0 +1,9 @@ + + + linjie + + +

linjie

+ + + diff --git a/templates/index1.html b/templates/index1.html new file mode 100644 index 0000000..2f3147d --- /dev/null +++ b/templates/index1.html @@ -0,0 +1,21 @@ +{% extends "layout.html" %} + +{% block content %} + +
+
+

Detection

+

p +

+
+ + +
+
+
+{% endblock %} diff --git a/templates/layout.html b/templates/layout.html new file mode 100644 index 0000000..d9e67c2 --- /dev/null +++ b/templates/layout.html @@ -0,0 +1,25 @@ + + + + + + + + + + + +
+

Detection

+
+ + + + {% block content %} + {% endblock %} + + + + + + diff --git a/templates/uploaded.html b/templates/uploaded.html new file mode 100644 index 0000000..0d5ceee --- /dev/null +++ b/templates/uploaded.html @@ -0,0 +1,37 @@ +{% extends "layout.html" %} + +{% block content %} +

{{ fname }} successfully uploaded.

+
+
+
+

Original Image

+ +
+
+

Upload another?

+
+ + +
+
+
+
+
+

Detected Image

+ +
+
+ + + +
+{% endblock %} + diff --git a/test.py b/test.py index 4790a1c..b55ac40 100644 --- a/test.py +++ b/test.py @@ -1,347 +1,19 @@ -import argparse -import json -import os -from pathlib import Path -from threading import Thread - -import numpy as np -import torch -import yaml -from tqdm import tqdm - -from models.experimental import attempt_load -from utils.datasets import create_dataloader -from utils.general import coco80_to_coco91_class, check_dataset, check_file, check_img_size, check_requirements, \ - box_iou, non_max_suppression, scale_coords, xyxy2xywh, xywh2xyxy, set_logging, increment_path, colorstr -from utils.metrics import ap_per_class, ConfusionMatrix -from utils.plots import plot_images, output_to_target, plot_study_txt -from utils.torch_utils import select_device, time_synchronized, TracedModel - -#方法1 -def test(data, - weights=None, - batch_size=32, - imgsz=640, - conf_thres=0.001, - iou_thres=0.6, # for NMS - save_json=False, - single_cls=False, - augment=False, - verbose=False, - model=None, - dataloader=None, - save_dir=Path(''), # for saving images - save_txt=False, # for auto-labelling - save_hybrid=False, # for hybrid auto-labelling - save_conf=False, # save auto-label confidences - plots=True, - wandb_logger=None, - compute_loss=None, - half_precision=True, - trace=False, - is_coco=False): - # Initialize/load model and set devices - training = model is not None - if training: # called by train.py - device = next(model.parameters()).device # get model device - - else: # called directly - set_logging() - device = select_device(opt.device, batch_size=batch_size) - - # Directories - save_dir = Path(increment_path(Path(opt.project) / opt.name, exist_ok=opt.exist_ok)) # increment run - (save_dir / 'labels' if save_txt else save_dir).mkdir(parents=True, exist_ok=True) # make dir - - # Load model - model = attempt_load(weights, map_location=device) # load FP32 model - gs = max(int(model.stride.max()), 32) # grid size (max stride) - imgsz = check_img_size(imgsz, s=gs) # check img_size - - if trace: - model = TracedModel(model, device, opt.img_size) - - # Half 11 - half = device.type != 'cpu' and half_precision # half precision only supported on CUDA - if half: - model.half() - - # Configures - model.eval() - if isinstance(data, str): - is_coco = data.endswith('coco.yaml') - with open(data) as f: - data = yaml.load(f, Loader=yaml.SafeLoader) - check_dataset(data) # check - nc = 1 if single_cls else int(data['nc']) # number of classes - iouv = torch.linspace(0.5, 0.95, 10).to(device) # iou vector for mAP@0.5:0.95 - niou = iouv.numel() - - # Logging## - log_imgs = 0 - if wandb_logger and wandb_logger.wandb: - log_imgs = min(wandb_logger.log_imgs, 100) - # Dataloader - if not training: - if device.type != 'cpu': - model(torch.zeros(1, 3, imgsz, imgsz).to(device).type_as(next(model.parameters()))) # run once - task = opt.task if opt.task in ('train', 'val', 'test') else 'val' # path to train/val/test images - dataloader = create_dataloader(data[task], imgsz, batch_size, gs, opt, pad=0.5, rect=True, - prefix=colorstr(f'{task}: '))[0] - - seen = 0 - confusion_matrix = ConfusionMatrix(nc=nc) - names = {k: v for k, v in enumerate(model.names if hasattr(model, 'names') else model.module.names)} - coco91class = coco80_to_coco91_class() - s = ('%20s' + '%12s' * 6) % ('Class', 'Images', 'Labels', 'P', 'R', 'mAP@.5', 'mAP@.5:.95') - p, r, f1, mp, mr, map50, map, t0, t1 = 0., 0., 0., 0., 0., 0., 0., 0., 0. - loss = torch.zeros(3, device=device) - jdict, stats, ap, ap_class, wandb_images = [], [], [], [], [] - for batch_i, (img, targets, paths, shapes) in enumerate(tqdm(dataloader, desc=s)): - img = img.to(device, non_blocking=True) - img = img.half() if half else img.float() # uint8 to fp16/32 - img /= 255.0 # 0 - 255 to 0.0 - 1.0 - targets = targets.to(device) - nb, _, height, width = img.shape # batch size, channels, height, width - - with torch.no_grad(): - # Run model - t = time_synchronized() - out, train_out = model(img, augment=augment) # inference and training outputs - t0 += time_synchronized() - t - - # Compute loss - if compute_loss: - loss += compute_loss([x.float() for x in train_out], targets)[1][:3] # box, obj, cls - - # Run NMS - targets[:, 2:] *= torch.Tensor([width, height, width, height]).to(device) # to pixels - lb = [targets[targets[:, 0] == i, 1:] for i in range(nb)] if save_hybrid else [] # for autolabelling - t = time_synchronized() - out = non_max_suppression(out, conf_thres=conf_thres, iou_thres=iou_thres, labels=lb, multi_label=True) - t1 += time_synchronized() - t - - # Statistics per image and - for si, pred in enumerate(out): - labels = targets[targets[:, 0] == si, 1:] - nl = len(labels) - tcls = labels[:, 0].tolist() if nl else [] # target class - path = Path(paths[si]) - seen += 1 - - if len(pred) == 0: - if nl: - stats.append((torch.zeros(0, niou, dtype=torch.bool), torch.Tensor(), torch.Tensor(), tcls)) - continue - - # Predictionss - predn = pred.clone() - scale_coords(img[si].shape[1:], predn[:, :4], shapes[si][0], shapes[si][1]) # native-space pred - - # Append to text file(文本) - if save_txt: - gn = torch.tensor(shapes[si][0])[[1, 0, 1, 0]] # normalization gain whwh - for *xyxy, conf, cls in predn.tolist(): - xywh = (xyxy2xywh(torch.tensor(xyxy).view(1, 4)) / gn).view(-1).tolist() # normalized xywh - line = (cls, *xywh, conf) if save_conf else (cls, *xywh) # label format - with open(save_dir / 'labels' / (path.stem + '.txt'), 'a') as f: - f.write(('%g ' * len(line)).rstrip() % line + '\n') - - # W&B logging - Media Panel Plots - if len(wandb_images) < log_imgs and wandb_logger.current_epoch > 0: # Check for test operation - if wandb_logger.current_epoch % wandb_logger.bbox_interval == 0: - box_data = [{"position": {"minX": xyxy[0], "minY": xyxy[1], "maxX": xyxy[2], "maxY": xyxy[3]}, - "class_id": int(cls), - "box_caption": "%s %.3f" % (names[cls], conf), - "scores": {"class_score": conf}, - "domain": "pixel"} for *xyxy, conf, cls in pred.tolist()] - boxes = {"predictions": {"box_data": box_data, "class_labels": names}} # inference-space - wandb_images.append(wandb_logger.wandb.Image(img[si], boxes=boxes, caption=path.name)) - wandb_logger.log_training_progress(predn, path, names) if wandb_logger and wandb_logger.wandb_run else None - - # Append to pycocotools JSON dictionary - if save_json: - # [{"image_id": 42, "category_id": 18, "bbox": [258.15, 41.29, 348.26, 243.78], "score": 0.236}, ... - image_id = int(path.stem) if path.stem.isnumeric() else path.stem - box = xyxy2xywh(predn[:, :4]) # xywh - box[:, :2] -= box[:, 2:] / 2 # xy center to top-left corner - for p, b in zip(pred.tolist(), box.tolist()): - jdict.append({'image_id': image_id, - 'category_id': coco91class[int(p[5])] if is_coco else int(p[5]), - 'bbox': [round(x, 3) for x in b], - 'score': round(p[4], 5)}) - - # Assign all predictions as incorrect test inco - correct = torch.zeros(pred.shape[0], niou, dtype=torch.bool, device=device) - if nl: - detected = [] # target indices - tcls_tensor = labels[:, 0] - - # target boxes - tbox = xywh2xyxy(labels[:, 1:5]) - scale_coords(img[si].shape[1:], tbox, shapes[si][0], shapes[si][1]) # native-space labels - if plots: - confusion_matrix.process_batch(predn, torch.cat((labels[:, 0:1], tbox), 1)) - - # Per target class - for cls in torch.unique(tcls_tensor): - ti = (cls == tcls_tensor).nonzero(as_tuple=False).view(-1) # prediction indices - pi = (cls == pred[:, 5]).nonzero(as_tuple=False).view(-1) # target indices - - # Search for detections - if pi.shape[0]: - # Prediction to target ious - ious, i = box_iou(predn[pi, :4], tbox[ti]).max(1) # best ious, indices - - # Append detections - detected_set = set() - for j in (ious > iouv[0]).nonzero(as_tuple=False): - d = ti[i[j]] # detected target - if d.item() not in detected_set: - detected_set.add(d.item()) - detected.append(d) - correct[pi[j]] = ious[j] > iouv # iou_thres is 1xn - if len(detected) == nl: # all targets already located in image - break - - # Append statistics (correct, conf, pcls, tcls) - stats.append((correct.cpu(), pred[:, 4].cpu(), pred[:, 5].cpu(), tcls)) - - # Plot images# file add images and video - if plots and batch_i < 3: - f = save_dir / f'test_batch{batch_i}_labels.jpg' # labels - Thread(target=plot_images, args=(img, targets, paths, f, names), daemon=True).start() - f = save_dir / f'test_batch{batch_i}_pred.jpg' # predictions - Thread(target=plot_images, args=(img, output_to_target(out), paths, f, names), daemon=True).start() - - # Compute statistics - stats = [np.concatenate(x, 0) for x in zip(*stats)] # to numpy - if len(stats) and stats[0].any(): - p, r, ap, f1, ap_class = ap_per_class(*stats, plot=plots, save_dir=save_dir, names=names) - ap50, ap = ap[:, 0], ap.mean(1) # AP@0.5, AP@0.5:0.95 - mp, mr, map50, map = p.mean(), r.mean(), ap50.mean(), ap.mean() - nt = np.bincount(stats[3].astype(np.int64), minlength=nc) # number of targets per class - else: - nt = torch.zeros(1) - - # Print results# print a human readable model - pf = '%20s' + '%12i' * 2 + '%12.3g' * 4 # print format - print(pf % ('all', seen, nt.sum(), mp, mr, map50, map)) - - # Print results per class - if (verbose or (nc < 50 and not training)) and nc > 1 and len(stats): - for i, c in enumerate(ap_class): - print(pf % (names[c], seen, nt[c], p[i], r[i], ap50[i], ap[i])) - - # Print speeds - t = tuple(x / seen * 1E3 for x in (t0, t1, t0 + t1)) + (imgsz, imgsz, batch_size) # tuple - if not training: - print('Speed: %.1f/%.1f/%.1f ms inference/NMS/total per %gx%g image at batch-size %g' % t) - - # Plots - if plots: - confusion_matrix.plot(save_dir=save_dir, names=list(names.values())) - if wandb_logger and wandb_logger.wandb: - val_batches = [wandb_logger.wandb.Image(str(f), caption=f.name) for f in sorted(save_dir.glob('test*.jpg'))] - wandb_logger.log({"Validation": val_batches}) - if wandb_images: - wandb_logger.log({"Bounding Box Debugger/Images": wandb_images}) - - # Save JSON - if save_json and len(jdict): - w = Path(weights[0] if isinstance(weights, list) else weights).stem if weights is not None else '' # weights - anno_json = './coco/annotations/instances_val2017.json' # annotations json - pred_json = str(save_dir / f"{w}_predictions.json") # predictions json - print('\nEvaluating pycocotools mAP... saving %s...' % pred_json) - with open(pred_json, 'w') as f: - json.dump(jdict, f) - - try: # https://github.com/cocodataset/cocoapi/blob/master/PythonAPI/pycocoEvalDemo.ipynb - from pycocotools.coco import COCO - from pycocotools.cocoeval import COCOeval - - anno = COCO(anno_json) # init annotations api - pred = anno.loadRes(pred_json) # init predictions api - eval = COCOeval(anno, pred, 'bbox') - if is_coco: - eval.params.imgIds = [int(Path(x).stem) for x in dataloader.dataset.img_files] # image IDs to evaluate - eval.evaluate() - eval.accumulate() - eval.summarize() - map, map50 = eval.stats[:2] # update results (mAP@0.5:0.95, mAP@0.5) - except Exception as e: - print(f'pycocotools unable to run: {e}') - - # Return results - model.float() # for training - if not training: - s = f"\n{len(list(save_dir.glob('labels/*.txt')))} labels saved to {save_dir / 'labels'}" if save_txt else '' - print(f"Results saved to {save_dir}{s}") - maps = np.zeros(nc) + map - for i, c in enumerate(ap_class): - maps[c] = ap[i] - return (mp, mr, map50, map, *(loss.cpu() / len(dataloader)).tolist()), maps, t - - -if __name__ == '__main__': - parser = argparse.ArgumentParser(prog='test.py') - parser.add_argument('--weights', nargs='+', type=str, default='yolov7.pt', help='model.pt path(s)') - parser.add_argument('--data', type=str, default='data/voc.yaml', help='*.data path') - parser.add_argument('--batch-size', type=int, default=32, help='size of each image batch') - parser.add_argument('--img-size', type=int, default=640, help='inference size (pixels)') - parser.add_argument('--conf-thres', type=float, default=0.001, help='object confidence threshold') - parser.add_argument('--iou-thres', type=float, default=0.65, help='IOU threshold for NMS') - parser.add_argument('--task', default='val', help='train, val, test, speed or study') - parser.add_argument('--device', default='', help='cuda device, i.e. 0 or 0,1,2,3 or cpu') - parser.add_argument('--single-cls', action='store_true', help='treat as single-class dataset') - parser.add_argument('--augment', action='store_true', help='augmented inference') - parser.add_argument('--verbose', action='store_true', help='report mAP by class') - parser.add_argument('--save-txt', action='store_true', help='save results to *.txt') - parser.add_argument('--save-hybrid', action='store_true', help='save label+prediction hybrid results to *.txt') - parser.add_argument('--save-conf', action='store_true', help='save confidences in --save-txt labels') - parser.add_argument('--save-json', action='store_true', help='save a cocoapi-compatible JSON results file') - parser.add_argument('--project', default='runs/test', help='save to project/name') - parser.add_argument('--name', default='exp', help='save to project/name') - parser.add_argument('--exist-ok', action='store_true', help='existing project/name ok, do not increment') - parser.add_argument('--no-trace', action='store_true', help='don`t trace model') - opt = parser.parse_args() - opt.save_json |= opt.data.endswith('coco.yaml') - opt.data = check_file(opt.data) # check file - print(opt) - #check_requirements() - #check - if opt.task in ('train', 'val', 'test'): # run normally - test(opt.data, - opt.weights, - opt.batch_size, - opt.img_size, - opt.conf_thres, - opt.iou_thres, - opt.save_json, - opt.single_cls, - opt.augment, - opt.verbose, - save_txt=opt.save_txt | opt.save_hybrid, - save_hybrid=opt.save_hybrid, - save_conf=opt.save_conf, - trace=not opt.no_trace, - ) - - elif opt.task == 'speed': # speed benchmarks - for w in opt.weights: - test(opt.data, w, opt.batch_size, opt.img_size, 0.25, 0.45, save_json=False, plots=False) - - elif opt.task == 'study': # run over a range of settings and save/plot - # python test.py --task study --data coco.yaml --iou 0.65 --weights yolov7.pt - x = list(range(256, 1536 + 128, 128)) # x axis (image sizes) - for w in opt.weights: - f = f'study_{Path(opt.data).stem}_{Path(w).stem}.txt' # filename to save to - y = [] # y axis - for i in x: # img-size - print(f'\nRunning {f} point {i}...') - r, _, t = test(opt.data, w, opt.batch_size, i, opt.conf_thres, opt.iou_thres, opt.save_json, - plots=False) - y.append(r + t) # results and times - np.savetxt(f, y, fmt='%10.4g') # save - os.system('zip -r study.zip study_*.txt') - plot_study_txt(x=x) # plot +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# @Author : linjie +import cv2 as cv +#读取视频信息。 +cap = cv.VideoCapture("http://admin:admin@172.20.24.19:8081") #@前为账号密码,后为ip地址 +face_xml = cv.CascadeClassifier("haarcascade_frontalface_default.xml") #导入XML文件 +while(cap.isOpened()): + f,img = cap.read() #读取一帧图片 + gray = cv.cvtColor(img,cv.COLOR_BGR2GRAY) #转换为灰度图 + face = face_xml.detectMultiScale(gray,1.3,10) #检测人脸,并返回人脸位置信息 + + for (x,y,w,h) in face: + cv.rectangle(img,(x,y),(x+w,y+h),(255,0,0),2) + cv.imshow("1",img) + if cv.waitKey(1) & 0xFF == ord('q'): + break + +cap.release() diff --git a/test/test.py b/test/test.py new file mode 100644 index 0000000..d72a792 --- /dev/null +++ b/test/test.py @@ -0,0 +1,293 @@ +import argparse +import glob +import json +import os +import shutil +from pathlib import Path + +import numpy as np +import torch +import yaml +from tqdm import tqdm + +from models.experimental import attempt_load +from utils.datasets import create_dataloader +from utils.general import ( + coco80_to_coco91_class, check_dataset, check_file, check_img_size, compute_loss, non_max_suppression, scale_coords, + xyxy2xywh, clip_coords, plot_images, xywh2xyxy, box_iou, output_to_target, ap_per_class, set_logging) +from utils.torch_utils import select_device, time_synchronized + + +def test(data, + weights=None, + batch_size=16, + imgsz=640, + conf_thres=0.001, + iou_thres=0.6, # for NMS + save_json=False, + single_cls=False, + augment=False, + verbose=False, + model=None, + dataloader=None, + save_dir='', + merge=False, + save_txt=False): + # Initialize/load model and set device + training = model is not None + if training: # called by train.py + device = next(model.parameters()).device # get model device + + else: # called directly + set_logging() + device = select_device(opt.device, batch_size=batch_size) + merge, save_txt = opt.merge, opt.save_txt # use Merge NMS, save *.txt labels + if save_txt: + out = Path('inference/output') + if os.path.exists(out): + shutil.rmtree(out) # delete output folder + os.makedirs(out) # make new output folder + + # Remove previous + for f in glob.glob(str(Path(save_dir) / 'test_batch*.jpg')): + os.remove(f) + + # Load model + model = attempt_load(weights, map_location=device) # load FP32 model + imgsz = check_img_size(imgsz, s=model.stride.max()) # check img_size + + # Multi-GPU disabled, incompatible with .half() https://github.com/ultralytics/yolov5/issues/99 + # if device.type != 'cpu' and torch.cuda.device_count() > 1: + # model = nn.DataParallel(model) + + # Half + half = device.type != 'cpu' # half precision only supported on CUDA + if half: + model.half() + + # Configure + model.eval() + with open(data) as f: + data = yaml.load(f, Loader=yaml.FullLoader) # model dict + check_dataset(data) # check + nc = 1 if single_cls else int(data['nc']) # number of classes + iouv = torch.linspace(0.5, 0.95, 10).to(device) # iou vector for mAP@0.5:0.95 + niou = iouv.numel() + + # Dataloader + if not training: + img = torch.zeros((1, 3, imgsz, imgsz), device=device) # init img + _ = model(img.half() if half else img) if device.type != 'cpu' else None # run once + path = data['test'] if opt.task == 'test' else data['val'] # path to val/test images + dataloader = create_dataloader(path, imgsz, batch_size, model.stride.max(), opt, + hyp=None, augment=False, cache=False, pad=0.5, rect=True)[0] + + seen = 0 + names = model.names if hasattr(model, 'names') else model.module.names + coco91class = coco80_to_coco91_class() + s = ('%20s' + '%12s' * 6) % ('Class', 'Images', 'Targets', 'P', 'R', 'mAP@.5', 'mAP@.5:.95') + p, r, f1, mp, mr, map50, map, t0, t1 = 0., 0., 0., 0., 0., 0., 0., 0., 0. + loss = torch.zeros(3, device=device) + jdict, stats, ap, ap_class = [], [], [], [] + for batch_i, (img, targets, paths, shapes) in enumerate(tqdm(dataloader, desc=s)): + img = img.to(device, non_blocking=True) + img = img.half() if half else img.float() # uint8 to fp16/32 + img /= 255.0 # 0 - 255 to 0.0 - 1.0 + targets = targets.to(device) + nb, _, height, width = img.shape # batch size, channels, height, width + whwh = torch.Tensor([width, height, width, height]).to(device) + + # Disable gradients + with torch.no_grad(): + # Run model + t = time_synchronized() + inf_out, train_out = model(img, augment=augment) # inference and training outputs + t0 += time_synchronized() - t + + # Compute loss + if training: # if model has loss hyperparameters + loss += compute_loss([x.float() for x in train_out], targets, model)[1][:3] # GIoU, obj, cls + + # Run NMS + t = time_synchronized() + output = non_max_suppression(inf_out, conf_thres=conf_thres, iou_thres=iou_thres, merge=merge) + t1 += time_synchronized() - t + + # Statistics per image + for si, pred in enumerate(output): + labels = targets[targets[:, 0] == si, 1:] + nl = len(labels) + tcls = labels[:, 0].tolist() if nl else [] # target class + seen += 1 + + if pred is None: + if nl: + stats.append((torch.zeros(0, niou, dtype=torch.bool), torch.Tensor(), torch.Tensor(), tcls)) + continue + + # Append to text file + if save_txt: + gn = torch.tensor(shapes[si][0])[[1, 0, 1, 0]] # normalization gain whwh + txt_path = str(out / Path(paths[si]).stem) + pred[:, :4] = scale_coords(img[si].shape[1:], pred[:, :4], shapes[si][0], shapes[si][1]) # to original + for *xyxy, conf, cls in pred: + xywh = (xyxy2xywh(torch.tensor(xyxy).view(1, 4)) / gn).view(-1).tolist() # normalized xywh + with open(txt_path + '.txt', 'a') as f: + f.write(('%g ' * 5 + '\n') % (cls, *xywh)) # label format + + # Clip boxes to image bounds + clip_coords(pred, (height, width)) + + # Append to pycocotools JSON dictionary + if save_json: + # [{"image_id": 42, "category_id": 18, "bbox": [258.15, 41.29, 348.26, 243.78], "score": 0.236}, ... + image_id = Path(paths[si]).stem + box = pred[:, :4].clone() # xyxy + scale_coords(img[si].shape[1:], box, shapes[si][0], shapes[si][1]) # to original shape + box = xyxy2xywh(box) # xywh + box[:, :2] -= box[:, 2:] / 2 # xy center to top-left corner + for p, b in zip(pred.tolist(), box.tolist()): + jdict.append({'image_id': int(image_id) if image_id.isnumeric() else image_id, + 'category_id': coco91class[int(p[5])], + 'bbox': [round(x, 3) for x in b], + 'score': round(p[4], 5)}) + + # Assign all predictions as incorrect + correct = torch.zeros(pred.shape[0], niou, dtype=torch.bool, device=device) + if nl: + detected = [] # target indices + tcls_tensor = labels[:, 0] + + # target boxes + tbox = xywh2xyxy(labels[:, 1:5]) * whwh + + # Per target class + for cls in torch.unique(tcls_tensor): + ti = (cls == tcls_tensor).nonzero(as_tuple=False).view(-1) # prediction indices + pi = (cls == pred[:, 5]).nonzero(as_tuple=False).view(-1) # target indices + + # Search for detections + if pi.shape[0]: + # Prediction to target ious + ious, i = box_iou(pred[pi, :4], tbox[ti]).max(1) # best ious, indices + + # Append detections + for j in (ious > iouv[0]).nonzero(as_tuple=False): + d = ti[i[j]] # detected target + if d not in detected: + detected.append(d) + correct[pi[j]] = ious[j] > iouv # iou_thres is 1xn + if len(detected) == nl: # all targets already located in image + break + + # Append statistics (correct, conf, pcls, tcls) + stats.append((correct.cpu(), pred[:, 4].cpu(), pred[:, 5].cpu(), tcls)) + + # Plot images + if batch_i < 1: + f = Path(save_dir) / ('test_batch%g_gt.jpg' % batch_i) # filename + plot_images(img, targets, paths, str(f), names) # ground truth + f = Path(save_dir) / ('test_batch%g_pred.jpg' % batch_i) + plot_images(img, output_to_target(output, width, height), paths, str(f), names) # predictions + + # Compute statistics + stats = [np.concatenate(x, 0) for x in zip(*stats)] # to numpy + if len(stats) and stats[0].any(): + p, r, ap, f1, ap_class = ap_per_class(*stats) + p, r, ap50, ap = p[:, 0], r[:, 0], ap[:, 0], ap.mean(1) # [P, R, AP@0.5, AP@0.5:0.95] + mp, mr, map50, map = p.mean(), r.mean(), ap50.mean(), ap.mean() + nt = np.bincount(stats[3].astype(np.int64), minlength=nc) # number of targets per class + else: + nt = torch.zeros(1) + + # Print results + pf = '%20s' + '%12.3g' * 6 # print format + print(pf % ('all', seen, nt.sum(), mp, mr, map50, map)) + + # Print results per class + if verbose and nc > 1 and len(stats): + for i, c in enumerate(ap_class): + print(pf % (names[c], seen, nt[c], p[i], r[i], ap50[i], ap[i])) + + # Print speeds + t = tuple(x / seen * 1E3 for x in (t0, t1, t0 + t1)) + (imgsz, imgsz, batch_size) # tuple + if not training: + print('Speed: %.1f/%.1f/%.1f ms inference/NMS/total per %gx%g image at batch-size %g' % t) + + # Save JSON + if save_json and len(jdict): + f = 'detections_val2017_%s_results.json' % \ + (weights.split(os.sep)[-1].replace('.pt', '') if isinstance(weights, str) else '') # filename + print('\nCOCO mAP with pycocotools... saving %s...' % f) + with open(f, 'w') as file: + json.dump(jdict, file) + + try: # https://github.com/cocodataset/cocoapi/blob/master/PythonAPI/pycocoEvalDemo.ipynb + from pycocotools.coco import COCO + from pycocotools.cocoeval import COCOeval + + imgIds = [int(Path(x).stem) for x in dataloader.dataset.img_files] + cocoGt = COCO(glob.glob('../coco/annotations/instances_val*.json')[0]) # initialize COCO ground truth api + cocoDt = cocoGt.loadRes(f) # initialize COCO pred api + cocoEval = COCOeval(cocoGt, cocoDt, 'bbox') + cocoEval.params.imgIds = imgIds # image IDs to evaluate + cocoEval.evaluate() + cocoEval.accumulate() + cocoEval.summarize() + map, map50 = cocoEval.stats[:2] # update results (mAP@0.5:0.95, mAP@0.5) + except Exception as e: + print('ERROR: pycocotools unable to run: %s' % e) + + # Return results + model.float() # for training + maps = np.zeros(nc) + map + for i, c in enumerate(ap_class): + maps[c] = ap[i] + return (mp, mr, map50, map, *(loss.cpu() / len(dataloader)).tolist()), maps, t + + +if __name__ == '__main__': + parser = argparse.ArgumentParser(prog='test.py') + parser.add_argument('--weights', nargs='+', type=str, default='yolov5s.pt', help='model.pt path(s)') + parser.add_argument('--data', type=str, default='data/coco128.yaml', help='*.data path') + parser.add_argument('--batch-size', type=int, default=32, help='size of each image batch') + parser.add_argument('--img-size', type=int, default=640, help='inference size (pixels)') + parser.add_argument('--conf-thres', type=float, default=0.001, help='object confidence threshold') + parser.add_argument('--iou-thres', type=float, default=0.65, help='IOU threshold for NMS') + parser.add_argument('--save-json', action='store_true', help='save a cocoapi-compatible JSON results file') + parser.add_argument('--task', default='val', help="'val', 'test', 'study'") + parser.add_argument('--device', default='', help='cuda device, i.e. 0 or 0,1,2,3 or cpu') + parser.add_argument('--single-cls', action='store_true', help='treat as single-class dataset') + parser.add_argument('--augment', action='store_true', help='augmented inference') + parser.add_argument('--merge', action='store_true', help='use Merge NMS') + parser.add_argument('--verbose', action='store_true', help='report mAP by class') + parser.add_argument('--save-txt', action='store_true', help='save results to *.txt') + opt = parser.parse_args() + opt.save_json |= opt.data.endswith('coco.yaml') + opt.data = check_file(opt.data) # check file + print(opt) + + if opt.task in ['val', 'test']: # run normally + test(opt.data, + opt.weights, + opt.batch_size, + opt.img_size, + opt.conf_thres, + opt.iou_thres, + opt.save_json, + opt.single_cls, + opt.augment, + opt.verbose) + + elif opt.task == 'study': # run over a range of settings and save/plot + for weights in ['yolov5s.pt', 'yolov5m.pt', 'yolov5l.pt', 'yolov5x.pt']: + f = 'study_%s_%s.txt' % (Path(opt.data).stem, Path(weights).stem) # filename to save to + x = list(range(320, 800, 64)) # x axis + y = [] # y axis + for i in x: # img-size + print('\nRunning %s point %s...' % (f, i)) + r, _, t = test(opt.data, weights, opt.batch_size, i, opt.conf_thres, opt.iou_thres, opt.save_json) + y.append(r + t) # results and times + np.savetxt(f, y, fmt='%10.4g') # save + os.system('zip -r study.zip study_*.txt') + # utils.general.plot_study_txt(f, x) # plot diff --git a/track.py b/track.py new file mode 100644 index 0000000..a94f5a0 --- /dev/null +++ b/track.py @@ -0,0 +1,277 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# @Author : linjie +import sys +sys.path.insert(0, './yolov5') + +from utils.datasets import LoadImages, LoadStreams +from utils.general import check_img_size, non_max_suppression, scale_coords +from utils.torch_utils import select_device, time_synchronized +from deep_sort_pytorch.utils.parser import get_config +from deep_sort_pytorch.deep_sort import DeepSort +import argparse +import os +import platform +import shutil +import time +from pathlib import Path +import cv2 +import torch +import torch.backends.cudnn as cudnn +from utils.general import ( + check_img_size, non_max_suppression, apply_classifier, scale_coords, + xyxy2xywh, plot_one_box, strip_optimizer, set_logging) + + +palette = (2 ** 11 - 1, 2 ** 15 - 1, 2 ** 20 - 1) + + +def bbox_rel(*xyxy): + """" Calculates the relative bounding box from absolute pixel values. """ + bbox_left = min([xyxy[0].item(), xyxy[2].item()]) + bbox_top = min([xyxy[1].item(), xyxy[3].item()]) + bbox_w = abs(xyxy[0].item() - xyxy[2].item()) + bbox_h = abs(xyxy[1].item() - xyxy[3].item()) + x_c = (bbox_left + bbox_w / 2) + y_c = (bbox_top + bbox_h / 2) + w = bbox_w + h = bbox_h + return x_c, y_c, w, h + + +def compute_color_for_labels(label): + """ + Simple function that adds fixed color depending on the class + """ + color = [int((p * (label ** 2 - label + 1)) % 255) for p in palette] + return tuple(color) + +past_identities = [] +def draw_boxes(img, bbox, cls_names, scores, identities=None, offset=(0, 0)): + for i, box in enumerate(bbox): + x1, y1, x2, y2 = [int(i) for i in box] + x1 += offset[0] + x2 += offset[0] + y1 += offset[1] + y2 += offset[1] + # box text and bar + id = int(identities[i]) if identities is not None else 0 + if int(1) not in identities: + print('===---===-------没有1============================') + print(identities) + color = compute_color_for_labels(id) + label = '%d %s %d' % (id, cls_names[i], scores[i]) + label += '%' + print("{0}号人物出现!========================================".format(id)) + t_size = cv2.getTextSize(label, cv2.FONT_HERSHEY_PLAIN, 2, 2)[0] + cv2.rectangle(img, (x1, y1), (x2, y2), color, 3) + cv2.rectangle( + img, (x1, y1), (x1 + t_size[0] + 3, y1 + t_size[1] + 4), color, -1) + cv2.putText(img, label, (x1, y1 + + t_size[1] + 4), cv2.FONT_HERSHEY_PLAIN, 2, [255, 255, 255], 2) + return img + + +def detect(opt, save_img=False): + out, source, weights, view_img, save_txt, imgsz = \ + opt.output, opt.source, opt.weights, opt.view_img, opt.save_txt, opt.img_size + webcam = source == '0' or source.startswith( + 'rtsp') or source.startswith('http') or source.endswith('.txt') + + # initialize deepsort + cfg = get_config() + cfg.merge_from_file(opt.config_deepsort) + deepsort = DeepSort(cfg.DEEPSORT.REID_CKPT, + max_dist=cfg.DEEPSORT.MAX_DIST, min_confidence=cfg.DEEPSORT.MIN_CONFIDENCE, + nms_max_overlap=cfg.DEEPSORT.NMS_MAX_OVERLAP, max_iou_distance=cfg.DEEPSORT.MAX_IOU_DISTANCE, + max_age=cfg.DEEPSORT.MAX_AGE, n_init=cfg.DEEPSORT.N_INIT, nn_budget=cfg.DEEPSORT.NN_BUDGET, + use_cuda=True) + + # Initialize + device = select_device(opt.device) + if os.path.exists(out): + shutil.rmtree(out) # delete output folder + os.makedirs(out) # make new output folder + half = device.type != 'cpu' # half precision only supported on CUDA + + # Load model + model = torch.load(weights, map_location=device)[ + 'model'].float() # load to FP32 + model.to(device).eval() + if half: + model.half() # to FP16 + + # Set Dataloader + vid_path, vid_writer = None, None + if webcam: + view_img = True + cudnn.benchmark = True # set True to speed up constant image size inference + dataset = LoadStreams(source, img_size=imgsz) + else: + view_img = True + save_img = True + dataset = LoadImages(source, img_size=imgsz) + + # Get names and colors + names = model.module.names if hasattr(model, 'module') else model.names + + # Run inference + t0 = time.time() + img = torch.zeros((1, 3, imgsz, imgsz), device=device) # init img + # run once + _ = model(img.half() if half else img) if device.type != 'cpu' else None + + save_path = str(Path(out)) + txt_path = str(Path(out)) + '/results.txt' + + for frame_idx, (path, img, im0s, vid_cap) in enumerate(dataset): + img = torch.from_numpy(img).to(device) + img = img.half() if half else img.float() # uint8 to fp16/32 + img /= 255.0 # 0 - 255 to 0.0 - 1.0 + if img.ndimension() == 3: + img = img.unsqueeze(0) + + # Inference + t1 = time_synchronized() + pred = model(img, augment=opt.augment)[0] + + # Apply NMS + pred = non_max_suppression( + pred, opt.conf_thres, opt.iou_thres, classes=opt.classes, agnostic=opt.agnostic_nms) + t2 = time_synchronized() + + # Process detections + for i, det in enumerate(pred): # detections per image + if webcam: # batch_size >= 1 + p, s, im0 = path[i], '%g: ' % i, im0s[i].copy() + else: + p, s, im0 = path, '', im0s + + s += '%gx%g ' % img.shape[2:] # print string + save_path = str(Path(out) / Path(p).name) + + if det is not None and len(det): + # Rescale boxes from img_size to im0 size + det[:, :4] = scale_coords( + img.shape[2:], det[:, :4], im0.shape).round() + + # Print results + for c in det[:, -1].unique(): + n = (det[:, -1] == c).sum() # detections per class + s += '%g %ss, ' % (n, names[int(c)]) # add to string + + bbox_xywh = [] + confs = [] + clses = [] + # Adapt detections to deep sort input format + for *xyxy, conf, cls in det: + x_c, y_c, bbox_w, bbox_h = bbox_rel(*xyxy) + obj = [x_c, y_c, bbox_w, bbox_h] + bbox_xywh.append(obj) + confs.append([conf.item()]) + clses.append([cls.item()]) + xywhs = torch.Tensor(bbox_xywh) + confss = torch.Tensor(confs) + clses = torch.Tensor(clses) + outputs = deepsort.update(xywhs, confss, clses, im0) + + # draw boxes for visualization + if len(outputs) > 0: + bbox_tlwh = [] + bbox_xyxy = outputs[:, :4] + identities = outputs[:, 4] + clses = outputs[:, 5] + scores = outputs[:, 6] + stays = outputs[:, 7] + draw_boxes(im0, bbox_xyxy, [names[i] for i in clses], scores, identities) + + # Write MOT compliant results to file + if save_txt and len(outputs) != 0: + for j, output in enumerate(outputs): + bbox_left = output[0] + bbox_top = output[1] + bbox_w = output[2] + bbox_h = output[3] + identity = output[-1] + with open(txt_path, 'a') as f: + f.write(('%g ' * 10 + '\n') % (frame_idx, identity, bbox_left, + bbox_top, bbox_w, bbox_h, -1, -1, -1, -1)) # label format + + else: + deepsort.increment_ages() + + # Print time (inference + NMS) + print('%sDone. (%.3fs)' % (s, t2 - t1)) + + # Stream results + if view_img: + cv2.imshow(p, im0) + if cv2.waitKey(1) == ord('q'): # q to quit + raise StopIteration + + # Save results (image with detections) + if save_img: + print('saving img!') + if dataset.mode == 'images': + cv2.imwrite(save_path, im0) + else: + print('saving video!') + if vid_path != save_path: # new video + vid_path = save_path + if isinstance(vid_writer, cv2.VideoWriter): + vid_writer.release() # release previous video writer + + fps = vid_cap.get(cv2.CAP_PROP_FPS) + w = int(vid_cap.get(cv2.CAP_PROP_FRAME_WIDTH)) + h = int(vid_cap.get(cv2.CAP_PROP_FRAME_HEIGHT)) + vid_writer = cv2.VideoWriter( + save_path, cv2.VideoWriter_fourcc(*opt.fourcc), fps, (w, h)) + vid_writer.write(im0) + + if save_txt or save_img: + print('Results saved to %s' % os.getcwd() + os.sep + out) + if platform == 'darwin': # MacOS + os.system('open ' + save_path) + + print('Done. (%.3fs)' % (time.time() - t0)) + + +if __name__ == '__main__': + parser = argparse.ArgumentParser() + parser.add_argument('--weights', type=str, + default='weights/yolov5s.pt', help='model.pt path') + # file/folder, 0 for webcam + parser.add_argument('--source', type=str, + default='inference/images', help='source') + parser.add_argument('--output', type=str, default='inference/output', + help='output folder') # output folder + parser.add_argument('--img-size', type=int, default=640, + help='inference size (pixels)') + parser.add_argument('--conf-thres', type=float, + default=0.4, help='object confidence threshold') + parser.add_argument('--iou-thres', type=float, + default=0.5, help='IOU threshold for NMS') + parser.add_argument('--fourcc', type=str, default='mp4v', + help='output video codec (verify ffmpeg support)') + parser.add_argument('--device', default='', + help='cuda device, i.e. 0 or 0,1,2,3 or cpu') + parser.add_argument('--view-img', action='store_true', + help='display results') + parser.add_argument('--save-txt', action='store_true', + help='save results to *.txt') + # class 0 is person + parser.add_argument('--classes', nargs='+', type=int, + default=[0], help='filter by class') + parser.add_argument('--agnostic-nms', action='store_true', + help='class-agnostic NMS') + parser.add_argument('--augment', action='store_true', + help='augmented inference') + parser.add_argument("--config_deepsort", type=str, + default="deep_sort_pytorch/configs/deep_sort.yaml") + args = parser.parse_args() + args.img_size = check_img_size(args.img_size) + print(args) + + + with torch.no_grad(): + detect(args) \ No newline at end of file diff --git a/train.py b/train.py index b66be69..e70b53a 100644 --- a/train.py +++ b/train.py @@ -1,16 +1,13 @@ import argparse -import logging import math import os import random import time -from copy import deepcopy +import logging from pathlib import Path -from threading import Thread import numpy as np import torch.distributed as dist -import torch.nn as nn import torch.nn.functional as F import torch.optim as optim import torch.optim.lr_scheduler as lr_scheduler @@ -22,63 +19,46 @@ from torch.utils.tensorboard import SummaryWriter from tqdm import tqdm import test # import test.py to get mAP after each epoch -from models.experimental import attempt_load from models.yolo import Model -from utils.autoanchor import check_anchors from utils.datasets import create_dataloader -from utils.general import labels_to_class_weights, increment_path, labels_to_image_weights, init_seeds, \ - fitness, strip_optimizer, get_latest_run, check_dataset, check_file, check_git_status, check_img_size, \ - check_requirements, print_mutation, set_logging, one_cycle, colorstr +from utils.general import ( + torch_distributed_zero_first, labels_to_class_weights, plot_labels, check_anchors, labels_to_image_weights, + compute_loss, plot_images, fitness, strip_optimizer, plot_results, get_latest_run, check_dataset, check_file, + check_git_status, check_img_size, increment_dir, print_mutation, plot_evolution, set_logging) from utils.google_utils import attempt_download -from utils.loss import ComputeLoss, ComputeLossOTA -from utils.plots import plot_images, plot_labels, plot_results, plot_evolution -from utils.torch_utils import ModelEMA, select_device, intersect_dicts, torch_distributed_zero_first, is_parallel -from utils.wandb_logging.wandb_utils import WandbLogger, check_wandb_resume +from utils.torch_utils import init_seeds, ModelEMA, select_device, intersect_dicts logger = logging.getLogger(__name__) - def train(hyp, opt, device, tb_writer=None): - logger.info(colorstr('hyperparameters: ') + ', '.join(f'{k}={v}' for k, v in hyp.items())) - save_dir, epochs, batch_size, total_batch_size, weights, rank = \ - Path(opt.save_dir), opt.epochs, opt.batch_size, opt.total_batch_size, opt.weights, opt.global_rank - - # Directories - wdir = save_dir / 'weights' - wdir.mkdir(parents=True, exist_ok=True) # make dir - last = wdir / 'last.pt' - best = wdir / 'best.pt' - results_file = save_dir / 'results.txt' - ##f + logger.info(f'Hyperparameters {hyp}') + log_dir = Path(tb_writer.log_dir) if tb_writer else Path(opt.logdir) / 'evolve' # logging directory + wdir = str(log_dir / 'weights') + os.sep # weights directory + os.makedirs(wdir, exist_ok=True) + last = wdir + 'last.pt' + best = wdir + 'best.pt' + results_file = str(log_dir / 'results.txt') + epochs, batch_size, total_batch_size, weights, rank = \ + opt.epochs, opt.batch_size, opt.total_batch_size, opt.weights, opt.global_rank + + # TODO: Use DDP logging. Only the first process is allowed to log. # Save run settings - with open(save_dir / 'hyp.yaml', 'w') as f: + with open(log_dir / 'hyp.yaml', 'w') as f: yaml.dump(hyp, f, sort_keys=False) - with open(save_dir / 'opt.yaml', 'w') as f: + with open(log_dir / 'opt.yaml', 'w') as f: yaml.dump(vars(opt), f, sort_keys=False) # Configure - plots = not opt.evolve # create plots cuda = device.type != 'cpu' init_seeds(2 + rank) with open(opt.data) as f: - data_dict = yaml.load(f, Loader=yaml.SafeLoader) # data dict - is_coco = opt.data.endswith('coco.yaml') - - # Logging- Doing this before checking the dataset. Might update data_dict - loggers = {'wandb': None} # loggers dict - if rank in [-1, 0]: - opt.hyp = hyp # add hyperparameters - #,map_location=torch.device('cpu') - run_id = torch.load(weights).get('wandb_id') if weights.endswith('.pt') and os.path.isfile(weights) else None - wandb_logger = WandbLogger(opt, Path(opt.save_dir).stem, run_id, data_dict) - loggers['wandb'] = wandb_logger.wandb - data_dict = wandb_logger.data_dict - if wandb_logger.wandb: - weights, epochs, hyp = opt.weights, opt.epochs, opt.hyp # WandbLogger might update weights, epochs if resuming - - nc = 1 if opt.single_cls else int(data_dict['nc']) # number of classes - names = ['item'] if opt.single_cls and len(data_dict['names']) != 1 else data_dict['names'] # class names + data_dict = yaml.load(f, Loader=yaml.FullLoader) # model dict + with torch_distributed_zero_first(rank): + check_dataset(data_dict) # check + train_path = data_dict['train'] + test_path = data_dict['val'] + nc, names = (1, ['item']) if opt.single_cls else (int(data_dict['nc']), data_dict['names']) # number classes, names assert len(names) == nc, '%g names found for nc=%g dataset in %s' % (len(names), nc, opt.data) # check # Model @@ -87,97 +67,37 @@ def train(hyp, opt, device, tb_writer=None): with torch_distributed_zero_first(rank): attempt_download(weights) # download if not found locally ckpt = torch.load(weights, map_location=device) # load checkpoint - model = Model(opt.cfg or ckpt['model'].yaml, ch=3, nc=nc, anchors=hyp.get('anchors')).to(device) # create - exclude = ['anchor'] if (opt.cfg or hyp.get('anchors')) and not opt.resume else [] # exclude keys + model = Model(opt.cfg or ckpt['model'].yaml, ch=3, nc=nc).to(device) # create + exclude = ['anchor'] if opt.cfg else [] # exclude keys state_dict = ckpt['model'].float().state_dict() # to FP32 state_dict = intersect_dicts(state_dict, model.state_dict(), exclude=exclude) # intersect model.load_state_dict(state_dict, strict=False) # load logger.info('Transferred %g/%g items from %s' % (len(state_dict), len(model.state_dict()), weights)) # report else: - model = Model(opt.cfg, ch=3, nc=nc, anchors=hyp.get('anchors')).to(device) # create - with torch_distributed_zero_first(rank): - check_dataset(data_dict) # check - train_path = data_dict['train'] - test_path = data_dict['val'] + model = Model(opt.cfg, ch=3, nc=nc).to(device) # create # Freeze - freeze = [] # parameter names to freeze (full or partial) - for k, v in model.named_parameters(): - v.requires_grad = True # train all layers - if any(x in k for x in freeze): - print('freezing %s' % k) - v.requires_grad = False + freeze = ['', ] # parameter names to freeze (full or partial) + if any(freeze): + for k, v in model.named_parameters(): + if any(x in k for x in freeze): + print('freezing %s' % k) + v.requires_grad = False # Optimizer - nbs = 64 # nominal batch size = 64 + nbs = 64 # nominal batch size accumulate = max(round(nbs / total_batch_size), 1) # accumulate loss before optimizing hyp['weight_decay'] *= total_batch_size * accumulate / nbs # scale weight_decay - logger.info(f"Scaled weight_decay = {hyp['weight_decay']}") pg0, pg1, pg2 = [], [], [] # optimizer parameter groups - for k, v in model.named_modules(): - if hasattr(v, 'bias') and isinstance(v.bias, nn.Parameter): - pg2.append(v.bias) # biases - if isinstance(v, nn.BatchNorm2d): - pg0.append(v.weight) # no decay - elif hasattr(v, 'weight') and isinstance(v.weight, nn.Parameter): - pg1.append(v.weight) # apply decay - if hasattr(v, 'im'): - if hasattr(v.im, 'implicit'): - pg0.append(v.im.implicit) - else: - for iv in v.im: - pg0.append(iv.implicit) - if hasattr(v, 'imc'): - if hasattr(v.imc, 'implicit'): - pg0.append(v.imc.implicit) - else: - for iv in v.imc: - pg0.append(iv.implicit) - if hasattr(v, 'imb'): - if hasattr(v.imb, 'implicit'): - pg0.append(v.imb.implicit) - else: - for iv in v.imb: - pg0.append(iv.implicit) - if hasattr(v, 'imo'): - if hasattr(v.imo, 'implicit'): - pg0.append(v.imo.implicit) - else: - for iv in v.imo: - pg0.append(iv.implicit) - if hasattr(v, 'ia'): - if hasattr(v.ia, 'implicit'): - pg0.append(v.ia.implicit) - else: - for iv in v.ia: - pg0.append(iv.implicit) - if hasattr(v, 'attn'): - if hasattr(v.attn, 'logit_scale'): - pg0.append(v.attn.logit_scale) - if hasattr(v.attn, 'q_bias'): - pg0.append(v.attn.q_bias) - if hasattr(v.attn, 'v_bias'): - pg0.append(v.attn.v_bias) - if hasattr(v.attn, 'relative_position_bias_table'): - pg0.append(v.attn.relative_position_bias_table) - if hasattr(v, 'rbr_dense'): - if hasattr(v.rbr_dense, 'weight_rbr_origin'): - pg0.append(v.rbr_dense.weight_rbr_origin) - if hasattr(v.rbr_dense, 'weight_rbr_avg_conv'): - pg0.append(v.rbr_dense.weight_rbr_avg_conv) - if hasattr(v.rbr_dense, 'weight_rbr_pfir_conv'): - pg0.append(v.rbr_dense.weight_rbr_pfir_conv) - if hasattr(v.rbr_dense, 'weight_rbr_1x1_kxk_idconv1'): - pg0.append(v.rbr_dense.weight_rbr_1x1_kxk_idconv1) - if hasattr(v.rbr_dense, 'weight_rbr_1x1_kxk_conv2'): - pg0.append(v.rbr_dense.weight_rbr_1x1_kxk_conv2) - if hasattr(v.rbr_dense, 'weight_rbr_gconv_dw'): - pg0.append(v.rbr_dense.weight_rbr_gconv_dw) - if hasattr(v.rbr_dense, 'weight_rbr_gconv_pw'): - pg0.append(v.rbr_dense.weight_rbr_gconv_pw) - if hasattr(v.rbr_dense, 'vector'): - pg0.append(v.rbr_dense.vector) + for k, v in model.named_parameters(): + v.requires_grad = True + if '.bias' in k: + pg2.append(v) # biases + elif '.weight' in k and '.bn' not in k: + pg1.append(v) # apply weight decay + else: + pg0.append(v) # all else if opt.adam: optimizer = optim.Adam(pg0, lr=hyp['lr0'], betas=(hyp['momentum'], 0.999)) # adjust beta1 to momentum @@ -191,16 +111,10 @@ def train(hyp, opt, device, tb_writer=None): # Scheduler https://arxiv.org/pdf/1812.01187.pdf # https://pytorch.org/docs/stable/_modules/torch/optim/lr_scheduler.html#OneCycleLR - if opt.linear_lr: - lf = lambda x: (1 - x / (epochs - 1)) * (1.0 - hyp['lrf']) + hyp['lrf'] # linear - else: - lf = one_cycle(1, hyp['lrf'], epochs) # cosine 1->hyp['lrf'] + lf = lambda x: (((1 + math.cos(x * math.pi / epochs)) / 2) ** 1.0) * 0.8 + 0.2 # cosine scheduler = lr_scheduler.LambdaLR(optimizer, lr_lambda=lf) # plot_lr_scheduler(optimizer, scheduler, epochs) - # EMA - ema = ModelEMA(model) if rank in [-1, 0] else None - # Resume start_epoch, best_fitness = 0, 0.0 if pretrained: @@ -209,19 +123,13 @@ def train(hyp, opt, device, tb_writer=None): optimizer.load_state_dict(ckpt['optimizer']) best_fitness = ckpt['best_fitness'] - # EMA - if ema and ckpt.get('ema'): - ema.ema.load_state_dict(ckpt['ema'].float().state_dict()) - ema.updates = ckpt['updates'] - # Results if ckpt.get('training_results') is not None: - results_file.write_text(ckpt['training_results']) # write results.txt + with open(results_file, 'w') as file: + file.write(ckpt['training_results']) # write results.txt # Epochs start_epoch = ckpt['epoch'] + 1 - if opt.resume: - assert start_epoch > 0, '%s training to %g epochs is finished, nothing to resume.' % (weights, epochs) if epochs < start_epoch: logger.info('%s has been trained for %g epochs. Fine-tuning for %g additional epochs.' % (weights, ckpt['epoch'], epochs)) @@ -230,8 +138,7 @@ def train(hyp, opt, device, tb_writer=None): del ckpt, state_dict # Image sizes - gs = max(int(model.stride.max()), 32) # grid size (max stride) - nl = model.model[-1].nl # number of detection layers (used for scaling hyp['obj']) + gs = int(max(model.stride)) # grid size (max stride) imgsz, imgsz_test = [check_img_size(x, gs) for x in opt.img_size] # verify imgsz are gs-multiples # DP mode @@ -243,82 +150,79 @@ def train(hyp, opt, device, tb_writer=None): model = torch.nn.SyncBatchNorm.convert_sync_batchnorm(model).to(device) logger.info('Using SyncBatchNorm()') + # Exponential moving average + ema = ModelEMA(model) if rank in [-1, 0] else None + + # DDP mode + if cuda and rank != -1: + model = DDP(model, device_ids=[opt.local_rank], output_device=(opt.local_rank)) + # Trainloader - dataloader, dataset = create_dataloader(train_path, imgsz, batch_size, gs, opt, - hyp=hyp, augment=True, cache=opt.cache_images, rect=opt.rect, rank=rank, - world_size=opt.world_size, workers=opt.workers, - image_weights=opt.image_weights, quad=opt.quad, prefix=colorstr('train: ')) + dataloader, dataset = create_dataloader(train_path, imgsz, batch_size, gs, opt, hyp=hyp, augment=True, + cache=opt.cache_images, rect=opt.rect, rank=rank, + world_size=opt.world_size, workers=opt.workers) mlc = np.concatenate(dataset.labels, 0)[:, 0].max() # max label class nb = len(dataloader) # number of batches assert mlc < nc, 'Label class %g exceeds nc=%g in %s. Possible class labels are 0-%g' % (mlc, nc, opt.data, nc - 1) - # Process 0 + # Testloader if rank in [-1, 0]: - testloader = create_dataloader(test_path, imgsz_test, batch_size * 2, gs, opt, # testloader - hyp=hyp, cache=opt.cache_images and not opt.notest, rect=True, rank=-1, - world_size=opt.world_size, workers=opt.workers, - pad=0.5, prefix=colorstr('val: '))[0] - - if not opt.resume: - labels = np.concatenate(dataset.labels, 0) - c = torch.tensor(labels[:, 0]) # classes - # cf = torch.bincount(c.long(), minlength=nc) + 1. # frequency - # model._initialize_biases(cf.to(device)) - if plots: - #plot_labels(labels, names, save_dir, loggers) - if tb_writer: - tb_writer.add_histogram('classes', c, 0) - - # Anchors - if not opt.noautoanchor: - check_anchors(dataset, model=model, thr=hyp['anchor_t'], imgsz=imgsz) - model.half().float() # pre-reduce anchor precision - - # DDP mode - if cuda and rank != -1: - model = DDP(model, device_ids=[opt.local_rank], output_device=opt.local_rank, - # nn.MultiheadAttention incompatibility with DDP https://github.com/pytorch/pytorch/issues/26698 - find_unused_parameters=any(isinstance(layer, nn.MultiheadAttention) for layer in model.modules())) + # local_rank is set to -1. Because only the first process is expected to do evaluation. + testloader = create_dataloader(test_path, imgsz_test, total_batch_size, gs, opt, hyp=hyp, augment=False, + cache=opt.cache_images, rect=True, rank=-1, world_size=opt.world_size, + workers=opt.workers)[0] # Model parameters - hyp['box'] *= 3. / nl # scale to layers - hyp['cls'] *= nc / 80. * 3. / nl # scale to classes and layers - hyp['obj'] *= (imgsz / 640) ** 2 * 3. / nl # scale to image size and layers - hyp['label_smoothing'] = opt.label_smoothing + hyp['cls'] *= nc / 80. # scale coco-tuned hyp['cls'] to current dataset model.nc = nc # attach number of classes to model model.hyp = hyp # attach hyperparameters to model - model.gr = 1.0 # iou loss ratio (obj_loss = 1.0 or iou) - model.class_weights = labels_to_class_weights(dataset.labels, nc).to(device) * nc # attach class weights + model.gr = 1.0 # giou loss ratio (obj_loss = 1.0 or giou) + model.class_weights = labels_to_class_weights(dataset.labels, nc).to(device) # attach class weights model.names = names + # Class frequency + if rank in [-1, 0]: + labels = np.concatenate(dataset.labels, 0) + c = torch.tensor(labels[:, 0]) # classes + # cf = torch.bincount(c.long(), minlength=nc) + 1. + # model._initialize_biases(cf.to(device)) + plot_labels(labels, save_dir=log_dir) + if tb_writer: + # tb_writer.add_hparams(hyp, {}) # causes duplicate https://github.com/ultralytics/yolov5/pull/384 + tb_writer.add_histogram('classes', c, 0) + + # Check anchors + if not opt.noautoanchor: + check_anchors(dataset, model=model, thr=hyp['anchor_t'], imgsz=imgsz) + # Start training t0 = time.time() - nw = max(round(hyp['warmup_epochs'] * nb), 1000) # number of warmup iterations, max(3 epochs, 1k iterations) + nw = max(3 * nb, 1e3) # number of warmup iterations, max(3 epochs, 1k iterations) # nw = min(nw, (epochs - start_epoch) / 2 * nb) # limit warmup to < 1/2 of training maps = np.zeros(nc) # mAP per class - results = (0, 0, 0, 0, 0, 0, 0) # P, R, mAP@.5, mAP@.5-.95, val_loss(box, obj, cls) + results = (0, 0, 0, 0, 0, 0, 0) # 'P', 'R', 'mAP', 'F1', 'val GIoU', 'val Objectness', 'val Classification' scheduler.last_epoch = start_epoch - 1 # do not move scaler = amp.GradScaler(enabled=cuda) - compute_loss_ota = ComputeLossOTA(model) # init loss class - compute_loss = ComputeLoss(model) # init loss class - logger.info(f'Image sizes {imgsz} train, {imgsz_test} test\n' - f'Using {dataloader.num_workers} dataloader workers\n' - f'Logging results to {save_dir}\n' - f'Starting training for {epochs} epochs...') - torch.save(model, wdir / 'init.pt') + logger.info('Image sizes %g train, %g test' % (imgsz, imgsz_test)) + logger.info('Using %g dataloader workers' % dataloader.num_workers) + logger.info('Starting training for %g epochs...' % epochs) + # torch.autograd.set_detect_anomaly(True) for epoch in range(start_epoch, epochs): # epoch ------------------------------------------------------------------ model.train() # Update image weights (optional) - if opt.image_weights: + if dataset.image_weights: # Generate indices if rank in [-1, 0]: - cw = model.class_weights.cpu().numpy() * (1 - maps) ** 2 / nc # class weights - iw = labels_to_image_weights(dataset.labels, nc=nc, class_weights=cw) # image weights - dataset.indices = random.choices(range(dataset.n), weights=iw, k=dataset.n) # rand weighted idx + w = model.class_weights.cpu().numpy() * (1 - maps) ** 2 # class weights + image_weights = labels_to_image_weights(dataset.labels, nc=nc, class_weights=w) + dataset.indices = random.choices(range(dataset.n), weights=image_weights, + k=dataset.n) # rand weighted idx # Broadcast if DDP if rank != -1: - indices = (torch.tensor(dataset.indices) if rank == 0 else torch.zeros(dataset.n)).int() + indices = torch.zeros([dataset.n], dtype=torch.int) + if rank == 0: + indices[:] = torch.from_tensor(dataset.indices, dtype=torch.int) dist.broadcast(indices, 0) if rank != 0: dataset.indices = indices.cpu().numpy() @@ -331,7 +235,7 @@ def train(hyp, opt, device, tb_writer=None): if rank != -1: dataloader.sampler.set_epoch(epoch) pbar = enumerate(dataloader) - logger.info(('\n' + '%10s' * 8) % ('Epoch', 'gpu_mem', 'box', 'obj', 'cls', 'total', 'labels', 'img_size')) + logger.info(('\n' + '%10s' * 8) % ('Epoch', 'gpu_mem', 'GIoU', 'obj', 'cls', 'total', 'targets', 'img_size')) if rank in [-1, 0]: pbar = tqdm(pbar, total=nb) # progress bar optimizer.zero_grad() @@ -342,13 +246,13 @@ def train(hyp, opt, device, tb_writer=None): # Warmup if ni <= nw: xi = [0, nw] # x interp - # model.gr = np.interp(ni, xi, [0.0, 1.0]) # iou loss ratio (obj_loss = 1.0 or iou) + # model.gr = np.interp(ni, xi, [0.0, 1.0]) # giou loss ratio (obj_loss = 1.0 or giou) accumulate = max(1, np.interp(ni, xi, [1, nbs / total_batch_size]).round()) for j, x in enumerate(optimizer.param_groups): # bias lr falls from 0.1 to lr0, all other lrs rise from 0.0 to lr0 - x['lr'] = np.interp(ni, xi, [hyp['warmup_bias_lr'] if j == 2 else 0.0, x['initial_lr'] * lf(epoch)]) + x['lr'] = np.interp(ni, xi, [0.1 if j == 2 else 0.0, x['initial_lr'] * lf(epoch)]) if 'momentum' in x: - x['momentum'] = np.interp(ni, xi, [hyp['warmup_momentum'], hyp['momentum']]) + x['momentum'] = np.interp(ni, xi, [0.9, hyp['momentum']]) # Multi-scale if opt.multi_scale: @@ -358,16 +262,20 @@ def train(hyp, opt, device, tb_writer=None): ns = [math.ceil(x * sf / gs) * gs for x in imgs.shape[2:]] # new shape (stretched to gs-multiple) imgs = F.interpolate(imgs, size=ns, mode='bilinear', align_corners=False) - # Forward-propagation + # Autocast with amp.autocast(enabled=cuda): - pred = model(imgs) # forward - loss, loss_items = compute_loss_ota(pred, targets.to(device), imgs) # loss scaled by batch_size + # Forward + pred = model(imgs) + + # Loss + loss, loss_items = compute_loss(pred, targets.to(device), model) # scaled by batch_size if rank != -1: loss *= opt.world_size # gradient averaged between devices in DDP mode - if opt.quad: - loss *= 4. + # if not torch.isfinite(loss): + # logger.info('WARNING: non-finite loss, ending training ', loss_items) + # return results - # Backward-propagation + # Backward scaler.scale(loss).backward() # Optimize @@ -375,7 +283,7 @@ def train(hyp, opt, device, tb_writer=None): scaler.step(optimizer) # optimizer.step scaler.update() optimizer.zero_grad() - if ema: + if ema is not None: ema.update(model) # Print @@ -387,208 +295,142 @@ def train(hyp, opt, device, tb_writer=None): pbar.set_description(s) # Plot - if plots and ni < 10: - f = save_dir / f'train_batch{ni}.jpg' # filename - Thread(target=plot_images, args=(imgs, targets, paths, f), daemon=True).start() - # if tb_writer: - # tb_writer.add_image(f, result, dataformats='HWC', global_step=epoch) - # tb_writer.add_graph(torch.jit.trace(model, imgs, strict=False), []) # add model graph - elif plots and ni == 10 and wandb_logger.wandb: - wandb_logger.log({"Mosaics": [wandb_logger.wandb.Image(str(x), caption=x.name) for x in - save_dir.glob('train*.jpg') if x.exists()]}) + if ni < 3: + f = str(log_dir / ('train_batch%g.jpg' % ni)) # filename + result = plot_images(images=imgs, targets=targets, paths=paths, fname=f) + if tb_writer and result is not None: + tb_writer.add_image(f, result, dataformats='HWC', global_step=epoch) + # tb_writer.add_graph(model, imgs) # add model to tensorboard # end batch ------------------------------------------------------------------------------------------------ - # end epoch ---------------------------------------------------------------------------------------------------- # Scheduler - lr = [x['lr'] for x in optimizer.param_groups] # for tensorboard scheduler.step() # DDP process 0 or single-GPU if rank in [-1, 0]: # mAP - ema.update_attr(model, include=['yaml', 'nc', 'hyp', 'gr', 'names', 'stride', 'class_weights']) + if ema is not None: + ema.update_attr(model, include=['yaml', 'nc', 'hyp', 'gr', 'names', 'stride']) final_epoch = epoch + 1 == epochs if not opt.notest or final_epoch: # Calculate mAP - wandb_logger.current_epoch = epoch + 1 - results, maps, times = test.test(data_dict, - batch_size=batch_size * 2, + results, maps, times = test.test(opt.data, + batch_size=total_batch_size, imgsz=imgsz_test, - model=ema.ema, + model=ema.ema.module if hasattr(ema.ema, 'module') else ema.ema, single_cls=opt.single_cls, dataloader=testloader, - save_dir=save_dir, - verbose=nc < 50 and final_epoch, - plots=plots and final_epoch, - wandb_logger=wandb_logger, - compute_loss=compute_loss, - is_coco=is_coco) + save_dir=log_dir) # Write with open(results_file, 'a') as f: - f.write(s + '%10.4g' * 7 % results + '\n') # append metrics, val_loss + f.write(s + '%10.4g' * 7 % results + '\n') # P, R, mAP, F1, test_losses=(GIoU, obj, cls) if len(opt.name) and opt.bucket: os.system('gsutil cp %s gs://%s/results/results%s.txt' % (results_file, opt.bucket, opt.name)) - # Log - tags = ['train/box_loss', 'train/obj_loss', 'train/cls_loss', # train loss - 'metrics/precision', 'metrics/recall', 'metrics/mAP_0.5', 'metrics/mAP_0.5:0.95', - 'val/box_loss', 'val/obj_loss', 'val/cls_loss', # val loss - 'x/lr0', 'x/lr1', 'x/lr2'] # params - for x, tag in zip(list(mloss[:-1]) + list(results) + lr, tags): - if tb_writer: - tb_writer.add_scalar(tag, x, epoch) # tensorboard - if wandb_logger.wandb: - wandb_logger.log({tag: x}) # W&B + # Tensorboard + if tb_writer: + tags = ['train/giou_loss', 'train/obj_loss', 'train/cls_loss', + 'metrics/precision', 'metrics/recall', 'metrics/mAP_0.5', 'metrics/mAP_0.5:0.95', + 'val/giou_loss', 'val/obj_loss', 'val/cls_loss'] + for x, tag in zip(list(mloss[:-1]) + list(results), tags): + tb_writer.add_scalar(tag, x, epoch) # Update best mAP - fi = fitness(np.array(results).reshape(1, -1)) # weighted combination of [P, R, mAP@.5, mAP@.5-.95] + fi = fitness(np.array(results).reshape(1, -1)) # fitness_i = weighted combination of [P, R, mAP, F1] if fi > best_fitness: best_fitness = fi - wandb_logger.end_epoch(best_result=best_fitness == fi) # Save model - if (not opt.nosave) or (final_epoch and not opt.evolve): # if save - ckpt = {'epoch': epoch, - 'best_fitness': best_fitness, - 'training_results': results_file.read_text(), - 'model': deepcopy(model.module if is_parallel(model) else model).half(), - 'ema': deepcopy(ema.ema).half(), - 'updates': ema.updates, - 'optimizer': optimizer.state_dict(), - 'wandb_id': wandb_logger.wandb_run.id if wandb_logger.wandb else None} + save = (not opt.nosave) or (final_epoch and not opt.evolve) + if save: + with open(results_file, 'r') as f: # create checkpoint + ckpt = {'epoch': epoch, + 'best_fitness': best_fitness, + 'training_results': f.read(), + 'model': ema.ema.module if hasattr(ema, 'module') else ema.ema, + 'optimizer': None if final_epoch else optimizer.state_dict()} # Save last, best and delete torch.save(ckpt, last) if best_fitness == fi: torch.save(ckpt, best) - if (best_fitness == fi) and (epoch >= 200): - torch.save(ckpt, wdir / 'best_{:03d}.pt'.format(epoch)) - if epoch == 0: - torch.save(ckpt, wdir / 'epoch_{:03d}.pt'.format(epoch)) - elif ((epoch+1) % 25) == 0: - torch.save(ckpt, wdir / 'epoch_{:03d}.pt'.format(epoch)) - elif epoch >= (epochs-5): - torch.save(ckpt, wdir / 'epoch_{:03d}.pt'.format(epoch)) - if wandb_logger.wandb: - if ((epoch + 1) % opt.save_period == 0 and not final_epoch) and opt.save_period != -1: - wandb_logger.log_model( - last.parent, opt, epoch, fi, best_model=best_fitness == fi) del ckpt - - # end epoch - # ---------------------------------------------------------------------------------------------------- + # end epoch ---------------------------------------------------------------------------------------------------- # end training + if rank in [-1, 0]: - # Plots - if plots: - plot_results(save_dir=save_dir) # save as results.png - if wandb_logger.wandb: - files = ['results.png', 'confusion_matrix.png', *[f'{x}_curve.png' for x in ('F1', 'PR', 'P', 'R')]] - wandb_logger.log({"Results": [wandb_logger.wandb.Image(str(save_dir / f), caption=f) for f in files - if (save_dir / f).exists()]}) - # Test best.pt + # Strip optimizers + n = ('_' if len(opt.name) and not opt.name.isnumeric() else '') + opt.name + fresults, flast, fbest = 'results%s.txt' % n, wdir + 'last%s.pt' % n, wdir + 'best%s.pt' % n + for f1, f2 in zip([wdir + 'last.pt', wdir + 'best.pt', 'results.txt'], [flast, fbest, fresults]): + if os.path.exists(f1): + os.rename(f1, f2) # rename + ispt = f2.endswith('.pt') # is *.pt + strip_optimizer(f2) if ispt else None # strip optimizer + os.system('gsutil cp %s gs://%s/weights' % (f2, opt.bucket)) if opt.bucket and ispt else None # upload + # Finish + if not opt.evolve: + plot_results(save_dir=log_dir) # save as results.png logger.info('%g epochs completed in %.3f hours.\n' % (epoch - start_epoch + 1, (time.time() - t0) / 3600)) - if opt.data.endswith('coco.yaml') and nc == 80: # if COCO - for m in (last, best) if best.exists() else (last): # speed, mAP tests - results, _, _ = test.test(opt.data, - batch_size=batch_size * 2, - imgsz=imgsz_test, - conf_thres=0.001, - iou_thres=0.7, - model=attempt_load(m, device).half(), - single_cls=opt.single_cls, - dataloader=testloader, - save_dir=save_dir, - save_json=True, - plots=False, - is_coco=is_coco) - # Strip optimizers - final = best if best.exists() else last # final model - for f in last, best: - if f.exists(): - strip_optimizer(f) # strip optimizers - if opt.bucket: - os.system(f'gsutil cp {final} gs://{opt.bucket}/weights') # upload - if wandb_logger.wandb and not opt.evolve: # Log the stripped model - wandb_logger.wandb.log_artifact(str(final), type='model', - name='run_' + wandb_logger.wandb_run.id + '_model', - aliases=['last', 'best', 'stripped']) - wandb_logger.finish_run() - else: - dist.destroy_process_group() + dist.destroy_process_group() if rank not in [-1, 0] else None torch.cuda.empty_cache() return results if __name__ == '__main__': parser = argparse.ArgumentParser() - parser.add_argument('--weights', type=str, default='yolov7.pt', help='initial weights path') + parser.add_argument('--weights', type=str, default='yolov5s.pt', help='initial weights path') parser.add_argument('--cfg', type=str, default='', help='model.yaml path') - parser.add_argument('--data', type=str, default='data/voc.yaml', help='data.yaml path') - parser.add_argument('--hyp', type=str, default='data/hyp.scratch.p5.yaml', help='hyperparameters path') - parser.add_argument('--epochs', type=int, default=30) - parser.add_argument('--batch-size', type=int, default=2, help='total batch size for all GPUs') - parser.add_argument('--img-size', nargs='+', type=int, default=[418, 418], help='[train, test] image sizes') + parser.add_argument('--data', type=str, default='data/coco128.yaml', help='data.yaml path') + parser.add_argument('--hyp', type=str, default='', help='hyperparameters path, i.e. data/hyp.scratch.yaml') + parser.add_argument('--epochs', type=int, default=300) + parser.add_argument('--batch-size', type=int, default=16, help='total batch size for all GPUs') + parser.add_argument('--img-size', nargs='+', type=int, default=[640, 640], help='train,test sizes') parser.add_argument('--rect', action='store_true', help='rectangular training') - parser.add_argument('--resume', nargs='?', const=True, default=False, help='resume most recent training') + parser.add_argument('--resume', nargs='?', const='get_last', default=False, + help='resume from given path/last.pt, or most recent run if blank') parser.add_argument('--nosave', action='store_true', help='only save final checkpoint') parser.add_argument('--notest', action='store_true', help='only test final epoch') parser.add_argument('--noautoanchor', action='store_true', help='disable autoanchor check') parser.add_argument('--evolve', action='store_true', help='evolve hyperparameters') parser.add_argument('--bucket', type=str, default='', help='gsutil bucket') parser.add_argument('--cache-images', action='store_true', help='cache images for faster training') - parser.add_argument('--image-weights', action='store_true', help='use weighted image selection for training') + parser.add_argument('--name', default='', help='renames results.txt to results_name.txt if supplied') parser.add_argument('--device', default='', help='cuda device, i.e. 0 or 0,1,2,3 or cpu') parser.add_argument('--multi-scale', action='store_true', help='vary img-size +/- 50%%') - parser.add_argument('--single-cls', action='store_true', help='train multi-class data as single-class') + parser.add_argument('--single-cls', action='store_true', help='train as single-class dataset') parser.add_argument('--adam', action='store_true', help='use torch.optim.Adam() optimizer') parser.add_argument('--sync-bn', action='store_true', help='use SyncBatchNorm, only available in DDP mode') parser.add_argument('--local_rank', type=int, default=-1, help='DDP parameter, do not modify') + parser.add_argument('--logdir', type=str, default='runs/', help='logging directory') parser.add_argument('--workers', type=int, default=8, help='maximum number of dataloader workers') - parser.add_argument('--project', default='runs/train', help='save to project/name') - parser.add_argument('--entity', default=None, help='W&B entity') - parser.add_argument('--name', default='exp', help='save to project/name') - parser.add_argument('--exist-ok', action='store_true', help='existing project/name ok, do not increment') - parser.add_argument('--quad', action='store_true', help='quad dataloader') - parser.add_argument('--linear-lr', action='store_true', help='linear LR') - parser.add_argument('--label-smoothing', type=float, default=0.0, help='Label smoothing epsilon') - parser.add_argument('--upload_dataset', action='store_true', help='Upload dataset as W&B artifact table') - parser.add_argument('--bbox_interval', type=int, default=-1, help='Set bounding-box image logging interval for W&B') - parser.add_argument('--save_period', type=int, default=-1, help='Log model after every "save_period" epoch') - parser.add_argument('--artifact_alias', type=str, default="latest", help='version of dataset artifact to be used') opt = parser.parse_args() # Set DDP variables + opt.total_batch_size = opt.batch_size opt.world_size = int(os.environ['WORLD_SIZE']) if 'WORLD_SIZE' in os.environ else 1 opt.global_rank = int(os.environ['RANK']) if 'RANK' in os.environ else -1 set_logging(opt.global_rank) - #if opt.global_rank in [-1, 0]: - # check_git_status() - # check_requirements() # Resume - wandb_run = check_wandb_resume(opt) - if opt.resume and not wandb_run: # resume an interrupted run - ckpt = opt.resume if isinstance(opt.resume, str) else get_latest_run() # specified or most recent path - assert os.path.isfile(ckpt), 'ERROR: --resume checkpoint does not exist' - apriori = opt.global_rank, opt.local_rank - with open(Path(ckpt).parent.parent / 'opt.yaml') as f: - opt = argparse.Namespace(**yaml.load(f, Loader=yaml.SafeLoader)) # replace - opt.cfg, opt.weights, opt.resume, opt.batch_size, opt.global_rank, opt.local_rank = '', ckpt, True, opt.total_batch_size, *apriori # reinstate - logger.info('Resuming training from %s' % ckpt) - else: - # opt.hyp = opt.hyp or ('hyp.finetune.yaml' if opt.weights else 'hyp.scratch.yaml') - opt.data, opt.cfg, opt.hyp = check_file(opt.data), check_file(opt.cfg), check_file(opt.hyp) # check files - assert len(opt.cfg) or len(opt.weights), 'either --cfg or --weights must be specified' - opt.img_size.extend([opt.img_size[-1]] * (2 - len(opt.img_size))) # extend to 2 sizes (train, test) - opt.name = 'evolve' if opt.evolve else opt.name - opt.save_dir = increment_path(Path(opt.project) / opt.name, exist_ok=opt.exist_ok | opt.evolve) # increment run + if opt.resume: + last = get_latest_run() if opt.resume == 'get_last' else opt.resume # resume from most recent run + if last and not opt.weights: + logger.info(f'Resuming training from {last}') + opt.weights = last if opt.resume and not opt.weights else opt.weights + if opt.global_rank in [-1, 0]: + check_git_status() + + opt.hyp = opt.hyp or ('data/hyp.finetune.yaml' if opt.weights else 'data/hyp.scratch.yaml') + opt.data, opt.cfg, opt.hyp = check_file(opt.data), check_file(opt.cfg), check_file(opt.hyp) # check files + assert len(opt.cfg) or len(opt.weights), 'either --cfg or --weights must be specified' + + opt.img_size.extend([opt.img_size[-1]] * (2 - len(opt.img_size))) # extend to 2 sizes (train, test) + device = select_device(opt.device, batch_size=opt.batch_size) # DDP mode - opt.total_batch_size = opt.batch_size - device = select_device(opt.device, batch_size=opt.batch_size) if opt.local_rank != -1: assert torch.cuda.device_count() > opt.local_rank torch.cuda.set_device(opt.local_rank) @@ -597,38 +439,32 @@ if __name__ == '__main__': assert opt.batch_size % opt.world_size == 0, '--batch-size must be multiple of CUDA device count' opt.batch_size = opt.total_batch_size // opt.world_size - # Hyperparameters + logger.info(opt) with open(opt.hyp) as f: - hyp = yaml.load(f, Loader=yaml.SafeLoader) # load hyps + hyp = yaml.load(f, Loader=yaml.FullLoader) # load hyps # Train - logger.info(opt) if not opt.evolve: - tb_writer = None # init loggers + tb_writer = None if opt.global_rank in [-1, 0]: - prefix = colorstr('tensorboard: ') - logger.info(f"{prefix}Start with 'tensorboard --logdir {opt.project}', view at http://localhost:6006/") - tb_writer = SummaryWriter(opt.save_dir) # Tensorboard + logger.info('Start Tensorboard with "tensorboard --logdir %s", view at http://localhost:6006/' % opt.logdir) + tb_writer = SummaryWriter(log_dir=increment_dir(Path(opt.logdir) / 'exp', opt.name)) # runs/exp + train(hyp, opt, device, tb_writer) # Evolve hyperparameters (optional) else: # Hyperparameter evolution metadata (mutation scale 0-1, lower_limit, upper_limit) meta = {'lr0': (1, 1e-5, 1e-1), # initial learning rate (SGD=1E-2, Adam=1E-3) - 'lrf': (1, 0.01, 1.0), # final OneCycleLR learning rate (lr0 * lrf) - 'momentum': (0.3, 0.6, 0.98), # SGD momentum/Adam beta1 + 'momentum': (0.1, 0.6, 0.98), # SGD momentum/Adam beta1 'weight_decay': (1, 0.0, 0.001), # optimizer weight decay - 'warmup_epochs': (1, 0.0, 5.0), # warmup epochs (fractions ok) - 'warmup_momentum': (1, 0.0, 0.95), # warmup initial momentum - 'warmup_bias_lr': (1, 0.0, 0.2), # warmup initial bias lr - 'box': (1, 0.02, 0.2), # box loss gain + 'giou': (1, 0.02, 0.2), # GIoU loss gain 'cls': (1, 0.2, 4.0), # cls loss gain 'cls_pw': (1, 0.5, 2.0), # cls BCELoss positive_weight 'obj': (1, 0.2, 4.0), # obj loss gain (scale with pixels) 'obj_pw': (1, 0.5, 2.0), # obj BCELoss positive_weight 'iou_t': (0, 0.1, 0.7), # IoU training threshold 'anchor_t': (1, 2.0, 8.0), # anchor-multiple threshold - 'anchors': (2, 2.0, 10.0), # anchors per output grid (0 to ignore) 'fl_gamma': (0, 0.0, 2.0), # focal loss gamma (efficientDet default gamma=1.5) 'hsv_h': (1, 0.0, 0.1), # image HSV-Hue augmentation (fraction) 'hsv_s': (1, 0.0, 0.9), # image HSV-Saturation augmentation (fraction) @@ -637,21 +473,20 @@ if __name__ == '__main__': 'translate': (1, 0.0, 0.9), # image translation (+/- fraction) 'scale': (1, 0.0, 0.9), # image scale (+/- gain) 'shear': (1, 0.0, 10.0), # image shear (+/- deg) - 'perspective': (0, 0.0, 0.001), # image perspective (+/- fraction), range 0-0.001 - 'flipud': (1, 0.0, 1.0), # image flip up-down (probability) - 'fliplr': (0, 0.0, 1.0), # image flip left-right (probability) - 'mosaic': (1, 0.0, 1.0), # image mixup (probability) + 'perspective': (1, 0.0, 0.001), # image perspective (+/- fraction), range 0-0.001 + 'flipud': (0, 0.0, 1.0), # image flip up-down (probability) + 'fliplr': (1, 0.0, 1.0), # image flip left-right (probability) 'mixup': (1, 0.0, 1.0)} # image mixup (probability) assert opt.local_rank == -1, 'DDP mode not implemented for --evolve' opt.notest, opt.nosave = True, True # only test/save final epoch # ei = [isinstance(x, (int, float)) for x in hyp.values()] # evolvable indices - yaml_file = Path(opt.save_dir) / 'hyp_evolved.yaml' # save best result here + yaml_file = Path('runs/evolve/hyp_evolved.yaml') # save best result here if opt.bucket: os.system('gsutil cp gs://%s/evolve.txt .' % opt.bucket) # download evolve.txt if exists - for _ in range(300): # generations to evolve - if Path('evolve.txt').exists(): # if evolve.txt exists: select best hyps and mutate + for _ in range(100): # generations to evolve + if os.path.exists('evolve.txt'): # if evolve.txt exists: select best hyps and mutate # Select parent(s) parent = 'single' # parent selection method: 'single' or 'weighted' x = np.loadtxt('evolve.txt', ndmin=2) @@ -665,7 +500,7 @@ if __name__ == '__main__': x = (x * w.reshape(n, 1)).sum(0) / w.sum() # weighted combination # Mutate - mp, s = 0.8, 0.2 # mutation probability, sigma + mp, s = 0.9, 0.2 # mutation probability, sigma npr = np.random npr.seed(int(time.time())) g = np.array([x[0] for x in meta.values()]) # gains 0-1 @@ -690,6 +525,5 @@ if __name__ == '__main__': # Plot results plot_evolution(yaml_file) - print(f'Hyperparameter evolution complete. Best results saved as: {yaml_file}\n' - f'Command to train a new model with these hyperparameters: $ python train.py --hyp {yaml_file}') -# end \ No newline at end of file + print('Hyperparameter evolution complete. Best results saved as: %s\nCommand to train a new model with these ' + 'hyperparameters: $ python train.py --hyp %s' % (yaml_file, yaml_file)) diff --git a/utils/__pycache__/datasets.cpython-38.pyc b/utils/__pycache__/datasets.cpython-38.pyc index 842bba2..d14ce05 100644 Binary files a/utils/__pycache__/datasets.cpython-38.pyc and b/utils/__pycache__/datasets.cpython-38.pyc differ diff --git a/utils/__pycache__/general.cpython-38.pyc b/utils/__pycache__/general.cpython-38.pyc index 20b2927..9ac6ef2 100644 Binary files a/utils/__pycache__/general.cpython-38.pyc and b/utils/__pycache__/general.cpython-38.pyc differ diff --git a/utils/__pycache__/google_utils.cpython-38.pyc b/utils/__pycache__/google_utils.cpython-38.pyc index 238bbd7..931ee0c 100644 Binary files a/utils/__pycache__/google_utils.cpython-38.pyc and b/utils/__pycache__/google_utils.cpython-38.pyc differ diff --git a/utils/__pycache__/torch_utils.cpython-38.pyc b/utils/__pycache__/torch_utils.cpython-38.pyc index 3c4330d..cf5ccc4 100644 Binary files a/utils/__pycache__/torch_utils.cpython-38.pyc and b/utils/__pycache__/torch_utils.cpython-38.pyc differ diff --git a/utils/__pycache__/utils.cpython-38.pyc b/utils/__pycache__/utils.cpython-38.pyc new file mode 100644 index 0000000..d57d8fd Binary files /dev/null and b/utils/__pycache__/utils.cpython-38.pyc differ diff --git a/utils/activations.py b/utils/activations.py index aa3ddf0..879f7b4 100644 --- a/utils/activations.py +++ b/utils/activations.py @@ -1,24 +1,15 @@ -# Activation functions - import torch import torch.nn as nn import torch.nn.functional as F -# SiLU https://arxiv.org/pdf/1606.08415.pdf ---------------------------------------------------------------------------- -class SiLU(nn.Module): # export-friendly version of nn.SiLU() +# Swish https://arxiv.org/pdf/1905.02244.pdf --------------------------------------------------------------------------- +class Swish(nn.Module): # @staticmethod def forward(x): return x * torch.sigmoid(x) -class Hardswish(nn.Module): # export-friendly version of nn.Hardswish() - @staticmethod - def forward(x): - # return x * F.hardsigmoid(x) # for torchscript and CoreML - return x * F.hardtanh(x + 3, 0., 6.) / 6. # for torchscript, CoreML and ONNX - - class MemoryEfficientSwish(nn.Module): class F(torch.autograd.Function): @staticmethod @@ -65,7 +56,7 @@ class MemoryEfficientMish(nn.Module): class FReLU(nn.Module): def __init__(self, c1, k=3): # ch_in, kernel super().__init__() - self.conv = nn.Conv2d(c1, c1, k, 1, 1, groups=c1, bias=False) + self.conv = nn.Conv2d(c1, c1, k, 1, 1, groups=c1) self.bn = nn.BatchNorm2d(c1) def forward(self, x): diff --git a/utils/datasets.py b/utils/datasets.py index b6bb8b0..f008d12 100644 --- a/utils/datasets.py +++ b/utils/datasets.py @@ -1,40 +1,24 @@ -# Dataset utils and dataloaders - import glob -import logging import math import os import random import shutil import time -from itertools import repeat -from multiprocessing.pool import ThreadPool from pathlib import Path from threading import Thread import cv2 import numpy as np import torch -import torch.nn.functional as F from PIL import Image, ExifTags from torch.utils.data import Dataset from tqdm import tqdm -import pickle -from copy import deepcopy -#from pycocotools import mask as maskUtils -from torchvision.utils import save_image -from torchvision.ops import roi_pool, roi_align, ps_roi_pool, ps_roi_align - -from utils.general import check_requirements, xyxy2xywh, xywh2xyxy, xywhn2xyxy, xyn2xy, segment2box, segments2boxes, \ - resample_segments, clean_str -from utils.torch_utils import torch_distributed_zero_first +from utils.general import xyxy2xywh, xywh2xyxy, torch_distributed_zero_first -# Parameters help_url = 'https://github.com/ultralytics/yolov5/wiki/Train-Custom-Data' -img_formats = ['bmp', 'jpg', 'jpeg', 'png', 'tif', 'tiff', 'dng', 'webp', 'mpo'] # acceptable image suffixes -vid_formats = ['mov', 'avi', 'mp4', 'mpg', 'mpeg', 'm4v', 'wmv', 'mkv'] # acceptable video suffixes -logger = logging.getLogger(__name__) +img_formats = ['.bmp', '.jpg', '.jpeg', '.png', '.tif', '.tiff', '.dng'] +vid_formats = ['.mov', '.avi', '.mp4', '.mpg', '.mpeg', '.m4v', '.wmv', '.mkv'] # Get orientation exif tag for orientation in ExifTags.TAGS.keys(): @@ -63,8 +47,8 @@ def exif_size(img): def create_dataloader(path, imgsz, batch_size, stride, opt, hyp=None, augment=False, cache=False, pad=0.0, rect=False, - rank=-1, world_size=1, workers=8, image_weights=False, quad=False, prefix=''): - # Make sure only the first process in DDP process the dataset first, and the following others can use the cache + rank=-1, world_size=1, workers=8): + # Make sure only the first process in DDP process the dataset first, and the following others can use the cache. with torch_distributed_zero_first(rank): dataset = LoadImagesAndLabels(path, imgsz, batch_size, augment=augment, # augment images @@ -74,85 +58,49 @@ def create_dataloader(path, imgsz, batch_size, stride, opt, hyp=None, augment=Fa single_cls=opt.single_cls, stride=int(stride), pad=pad, - image_weights=image_weights, - prefix=prefix) + rank=rank) batch_size = min(batch_size, len(dataset)) nw = min([os.cpu_count() // world_size, batch_size if batch_size > 1 else 0, workers]) # number of workers - sampler = torch.utils.data.distributed.DistributedSampler(dataset) if rank != -1 else None - loader = torch.utils.data.DataLoader if image_weights else InfiniteDataLoader - # Use torch.utils.data.DataLoader() if dataset.properties will update during training else InfiniteDataLoader() - dataloader = loader(dataset, - batch_size=batch_size, - num_workers=nw, - sampler=sampler, - pin_memory=True, - collate_fn=LoadImagesAndLabels.collate_fn4 if quad else LoadImagesAndLabels.collate_fn) + train_sampler = torch.utils.data.distributed.DistributedSampler(dataset) if rank != -1 else None + dataloader = torch.utils.data.DataLoader(dataset, + batch_size=batch_size, + num_workers=nw, + sampler=train_sampler, + pin_memory=True, + collate_fn=LoadImagesAndLabels.collate_fn) return dataloader, dataset -class InfiniteDataLoader(torch.utils.data.dataloader.DataLoader): - """ Dataloader that reuses workers - - Uses same syntax as vanilla DataLoader - """ - - def __init__(self, *args, **kwargs): - super().__init__(*args, **kwargs) - object.__setattr__(self, 'batch_sampler', _RepeatSampler(self.batch_sampler)) - self.iterator = super().__iter__() - - def __len__(self): - return len(self.batch_sampler.sampler) - - def __iter__(self): - for i in range(len(self)): - yield next(self.iterator) - - -class _RepeatSampler(object): - """ Sampler that repeats forever - - Args: - sampler (Sampler) - """ - - def __init__(self, sampler): - self.sampler = sampler - - def __iter__(self): - while True: - yield from iter(self.sampler) - - class LoadImages: # for inference - def __init__(self, path, img_size=640, stride=32): - p = str(Path(path).absolute()) # os-agnostic absolute path + def __init__(self, path, img_size=640): + #print('看看path是什么:{0}'.format(path)) + p = str(Path(path)) # os-agnostic + p = os.path.abspath(p) # absolute path if '*' in p: - files = sorted(glob.glob(p, recursive=True)) # glob + files = sorted(glob.glob(p)) # glob elif os.path.isdir(p): files = sorted(glob.glob(os.path.join(p, '*.*'))) # dir elif os.path.isfile(p): files = [p] # files else: - raise Exception(f'ERROR: {p} does not exist') + raise Exception('ERROR: %s does not exist' % p) - images = [x for x in files if x.split('.')[-1].lower() in img_formats] - videos = [x for x in files if x.split('.')[-1].lower() in vid_formats] + images = [x for x in files if os.path.splitext(x)[-1].lower() in img_formats] + videos = [x for x in files if os.path.splitext(x)[-1].lower() in vid_formats] ni, nv = len(images), len(videos) self.img_size = img_size - self.stride = stride self.files = images + videos self.nf = ni + nv # number of files self.video_flag = [False] * ni + [True] * nv - self.mode = 'image' + self.mode = 'images' if any(videos): self.new_video(videos[0]) # new video else: self.cap = None - assert self.nf > 0, f'No images or videos found in {p}. ' \ - f'Supported formats are:\nimages: {img_formats}\nvideos: {vid_formats}' + assert self.nf > 0, 'No images or videos found in %s. Supported formats are:\nimages: %s\nvideos: %s' % \ + (p, img_formats, vid_formats) def __iter__(self): self.count = 0 @@ -178,22 +126,23 @@ class LoadImages: # for inference ret_val, img0 = self.cap.read() self.frame += 1 - print(f'video {self.count + 1}/{self.nf} ({self.frame}/{self.nframes}) {path}: ', end='') + print('video %g/%g (%g/%g) %s: ' % (self.count + 1, self.nf, self.frame, self.nframes, path), end='') else: # Read image self.count += 1 img0 = cv2.imread(path) # BGR assert img0 is not None, 'Image Not Found ' + path - #print(f'image {self.count}/{self.nf} {path}: ', end='') + print('image %g/%g %s: ' % (self.count, self.nf, path), end='') # Padded resize - img = letterbox(img0, self.img_size, stride=self.stride)[0] + img = letterbox(img0, new_shape=self.img_size)[0] # Convert img = img[:, :, ::-1].transpose(2, 0, 1) # BGR to RGB, to 3x416x416 img = np.ascontiguousarray(img) + # cv2.imwrite(path + '.letterbox.jpg', 255 * img.transpose((1, 2, 0))[:, :, ::-1]) # save letterbox image return path, img, img0, self.cap def new_video(self, path): @@ -206,16 +155,23 @@ class LoadImages: # for inference class LoadWebcam: # for inference - def __init__(self, pipe='0', img_size=640, stride=32): + def __init__(self, pipe=0, img_size=640): self.img_size = img_size - self.stride = stride - if pipe.isnumeric(): - pipe = eval(pipe) # local camera + if pipe == '0': + pipe = 0 # local camera # pipe = 'rtsp://192.168.1.64/1' # IP camera # pipe = 'rtsp://username:password@192.168.1.64/1' # IP camera with login + # pipe = 'rtsp://170.93.143.139/rtplive/470011e600ef003a004ee33696235daa' # IP traffic camera # pipe = 'http://wmccpinetop.axiscam.net/mjpg/video.mjpg' # IP golf camera + # https://answers.opencv.org/question/215996/changing-gstreamer-pipeline-to-opencv-in-pythonsolved/ + # pipe = '"rtspsrc location="rtsp://username:password@192.168.1.64/1" latency=10 ! appsink' # GStreamer + + # https://answers.opencv.org/question/200787/video-acceleration-gstremer-pipeline-in-videocapture/ + # https://stackoverflow.com/questions/54095699/install-gstreamer-support-for-opencv-python-package # install help + # pipe = "rtspsrc location=rtsp://root:root@192.168.0.91:554/axis-media/media.amp?videocodec=h264&resolution=3840x2160 protocols=GST_RTSP_LOWER_TRANS_TCP ! rtph264depay ! queue ! vaapih264dec ! videoconvert ! appsink" # GStreamer + self.pipe = pipe self.cap = cv2.VideoCapture(pipe) # video capture object self.cap.set(cv2.CAP_PROP_BUFFERSIZE, 3) # set buffer size @@ -246,12 +202,12 @@ class LoadWebcam: # for inference break # Print - assert ret_val, f'Camera Error {self.pipe}' + assert ret_val, 'Camera Error %s' % self.pipe img_path = 'webcam.jpg' - print(f'webcam {self.count}: ', end='') + print('webcam %g: ' % self.count, end='') # Padded resize - img = letterbox(img0, self.img_size, stride=self.stride)[0] + img = letterbox(img0, new_shape=self.img_size)[0] # Convert img = img[:, :, ::-1].transpose(2, 0, 1) # BGR to RGB, to 3x416x416 @@ -264,42 +220,35 @@ class LoadWebcam: # for inference class LoadStreams: # multiple IP or RTSP cameras - def __init__(self, sources='streams.txt', img_size=640, stride=32): - self.mode = 'stream' + def __init__(self, sources='streams.txt', img_size=640): + self.mode = 'images' self.img_size = img_size - self.stride = stride if os.path.isfile(sources): with open(sources, 'r') as f: - sources = [x.strip() for x in f.read().strip().splitlines() if len(x.strip())] + sources = [x.strip() for x in f.read().splitlines() if len(x.strip())] else: sources = [sources] n = len(sources) self.imgs = [None] * n - self.sources = [clean_str(x) for x in sources] # clean source names for later + self.sources = sources for i, s in enumerate(sources): # Start the thread to read frames from the video stream - print(f'{i + 1}/{n}: {s}... ', end='') - url = eval(s) if s.isnumeric() else s - if 'youtube.com/' in str(url) or 'youtu.be/' in str(url): # if source is YouTube video - check_requirements(('pafy', 'youtube_dl')) - import pafy - url = pafy.new(url).getbest(preftype="mp4").url - cap = cv2.VideoCapture(url) - assert cap.isOpened(), f'Failed to open {s}' + print('%g/%g: %s... ' % (i + 1, n, s), end='') + cap = cv2.VideoCapture(0 if s == '0' else s) + assert cap.isOpened(), 'Failed to open %s' % s w = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)) h = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT)) - self.fps = cap.get(cv2.CAP_PROP_FPS) % 100 - + fps = cap.get(cv2.CAP_PROP_FPS) % 100 _, self.imgs[i] = cap.read() # guarantee first frame thread = Thread(target=self.update, args=([i, cap]), daemon=True) - print(f' success ({w}x{h} at {self.fps:.2f} FPS).') + print(' success (%gx%g at %.2f FPS).' % (w, h, fps)) thread.start() print('') # newline # check for common shapes - s = np.stack([letterbox(x, self.img_size, stride=self.stride)[0].shape for x in self.imgs], 0) # shapes + s = np.stack([letterbox(x, new_shape=self.img_size)[0].shape for x in self.imgs], 0) # inference shapes self.rect = np.unique(s, axis=0).shape[0] == 1 # rect inference if all shapes equal if not self.rect: print('WARNING: Different stream shapes detected. For optimal performance supply similarly-shaped streams.') @@ -312,10 +261,9 @@ class LoadStreams: # multiple IP or RTSP cameras # _, self.imgs[index] = cap.read() cap.grab() if n == 4: # read every 4th frame - success, im = cap.retrieve() - self.imgs[index] = im if success else self.imgs[index] * 0 + _, self.imgs[index] = cap.retrieve() n = 0 - time.sleep(1 / self.fps) # wait time + time.sleep(0.01) # wait time def __iter__(self): self.count = -1 @@ -329,7 +277,7 @@ class LoadStreams: # multiple IP or RTSP cameras raise StopIteration # Letterbox - img = [letterbox(x, self.img_size, auto=self.rect, stride=self.stride)[0] for x in img0] + img = [letterbox(x, new_shape=self.img_size, auto=self.rect)[0] for x in img0] # Stack img = np.stack(img, 0) @@ -344,15 +292,34 @@ class LoadStreams: # multiple IP or RTSP cameras return 0 # 1E12 frames = 32 streams at 30 FPS for 30 years -def img2label_paths(img_paths): - # Define label paths as a function of image paths - sa, sb = os.sep + 'images' + os.sep, os.sep + 'labels' + os.sep # /images/, /labels/ substrings - return ['txt'.join(x.replace(sa, sb, 1).rsplit(x.split('.')[-1], 1)) for x in img_paths] - - class LoadImagesAndLabels(Dataset): # for training/testing def __init__(self, path, img_size=640, batch_size=16, augment=False, hyp=None, rect=False, image_weights=False, - cache_images=False, single_cls=False, stride=32, pad=0.0, prefix=''): + cache_images=False, single_cls=False, stride=32, pad=0.0, rank=-1): + try: + f = [] # image files + for p in path if isinstance(path, list) else [path]: + p = str(Path(p)) # os-agnostic + parent = str(Path(p).parent) + os.sep + if os.path.isfile(p): # file + with open(p, 'r') as t: + t = t.read().splitlines() + f += [x.replace('./', parent) if x.startswith('./') else x for x in t] # local to global path + elif os.path.isdir(p): # folder + f += glob.iglob(p + os.sep + '*.*') + else: + raise Exception('%s does not exist' % p) + self.img_files = sorted( + [x.replace('/', os.sep) for x in f if os.path.splitext(x)[-1].lower() in img_formats]) + except Exception as e: + raise Exception('Error loading data from %s: %s\nSee %s' % (path, e, help_url)) + + n = len(self.img_files) + assert n > 0, 'No images found in %s. See %s' % (path, help_url) + bi = np.floor(np.arange(n) / batch_size).astype(np.int) # batch index + nb = bi[-1] + 1 # number of batches + + self.n = n # number of images + self.batch = bi # batch index of image self.img_size = img_size self.augment = augment self.hyp = hyp @@ -361,67 +328,26 @@ class LoadImagesAndLabels(Dataset): # for training/testing self.mosaic = self.augment and not self.rect # load 4 images at a time into a mosaic (only during training) self.mosaic_border = [-img_size // 2, -img_size // 2] self.stride = stride - self.path = path - #self.albumentations = Albumentations() if augment else None - try: - f = [] # image files - for p in path if isinstance(path, list) else [path]: - p = Path(p) # os-agnostic - if p.is_dir(): # dir - f += glob.glob(str(p / '**' / '*.*'), recursive=True) - # f = list(p.rglob('**/*.*')) # pathlib - elif p.is_file(): # file - with open(p, 'r') as t: - t = t.read().strip().splitlines() - parent = str(p.parent) + os.sep - f += [x.replace('./', parent) if x.startswith('./') else x for x in t] # local to global path - # f += [p.parent / x.lstrip(os.sep) for x in t] # local to global path (pathlib) - else: - raise Exception(f'{prefix}{p} does not exist') - self.img_files = sorted([x.replace('/', os.sep) for x in f if x.split('.')[-1].lower() in img_formats]) - # self.img_files = sorted([x for x in f if x.suffix[1:].lower() in img_formats]) # pathlib - assert self.img_files, f'{prefix}No images found' - except Exception as e: - raise Exception(f'{prefix}Error loading data from {path}: {e}\nSee {help_url}') + # Define labels + self.label_files = [x.replace('images', 'labels').replace(os.path.splitext(x)[-1], '.txt') for x in + self.img_files] # Check cache - self.label_files = img2label_paths(self.img_files) # labels - cache_path = (p if p.is_file() else Path(self.label_files[0]).parent).with_suffix('.cache') # cached labels - if cache_path.is_file(): - cache, exists = torch.load(cache_path), True # load - #if cache['hash'] != get_hash(self.label_files + self.img_files) or 'version' not in cache: # changed - # cache, exists = self.cache_labels(cache_path, prefix), False # re-cache + cache_path = str(Path(self.label_files[0]).parent) + '.cache' # cached labels + if os.path.isfile(cache_path): + cache = torch.load(cache_path) # load + if cache['hash'] != get_hash(self.label_files + self.img_files): # dataset changed + cache = self.cache_labels(cache_path) # re-cache else: - cache, exists = self.cache_labels(cache_path, prefix), False # cache - - # Display cache - nf, nm, ne, nc, n = cache.pop('results') # found, missing, empty, corrupted, total - if exists: - d = f"Scanning '{cache_path}' images and labels... {nf} found, {nm} missing, {ne} empty, {nc} corrupted" - tqdm(None, desc=prefix + d, total=n, initial=n) # display cache results - assert nf > 0 or not augment, f'{prefix}No labels in {cache_path}. Can not train without labels. See {help_url}' - - # Read cache - cache.pop('hash') # remove hash - cache.pop('version') # remove version - labels, shapes, self.segments = zip(*cache.values()) - self.labels = list(labels) - self.shapes = np.array(shapes, dtype=np.float64) - self.img_files = list(cache.keys()) # update - self.label_files = img2label_paths(cache.keys()) # update - if single_cls: - for x in self.labels: - x[:, 0] = 0 + cache = self.cache_labels(cache_path) # cache - n = len(shapes) # number of images - bi = np.floor(np.arange(n) / batch_size).astype(np.int) # batch index - nb = bi[-1] + 1 # number of batches - self.batch = bi # batch index of image - self.n = n - self.indices = range(n) + # Get labels + labels, shapes = zip(*[cache[x] for x in self.img_files]) + self.shapes = np.array(shapes, dtype=np.float64) + self.labels = list(labels) - # Rectangular Training + # Rectangular Training https://github.com/ultralytics/yolov3/issues/232 if self.rect: # Sort by aspect ratio s = self.shapes # wh @@ -445,81 +371,102 @@ class LoadImagesAndLabels(Dataset): # for training/testing self.batch_shapes = np.ceil(np.array(shapes) * img_size / stride + pad).astype(np.int) * stride + # Cache labels + create_datasubset, extract_bounding_boxes, labels_loaded = False, False, False + nm, nf, ne, ns, nd = 0, 0, 0, 0, 0 # number missing, found, empty, datasubset, duplicate + pbar = enumerate(self.label_files) + if rank in [-1, 0]: + pbar = tqdm(pbar) + for i, file in pbar: + l = self.labels[i] # label + if l is not None and l.shape[0]: + assert l.shape[1] == 5, '> 5 label columns: %s' % file + assert (l >= 0).all(), 'negative labels: %s' % file + assert (l[:, 1:] <= 1).all(), 'non-normalized or out of bounds coordinate labels: %s' % file + if np.unique(l, axis=0).shape[0] < l.shape[0]: # duplicate rows + nd += 1 # print('WARNING: duplicate rows in %s' % self.label_files[i]) # duplicate rows + if single_cls: + l[:, 0] = 0 # force dataset into single-class mode + self.labels[i] = l + nf += 1 # file found + + # Create subdataset (a smaller dataset) + if create_datasubset and ns < 1E4: + if ns == 0: + create_folder(path='./datasubset') + os.makedirs('./datasubset/images') + exclude_classes = 43 + if exclude_classes not in l[:, 0]: + ns += 1 + # shutil.copy(src=self.img_files[i], dst='./datasubset/images/') # copy image + with open('./datasubset/images.txt', 'a') as f: + f.write(self.img_files[i] + '\n') + + # Extract object detection boxes for a second stage classifier + if extract_bounding_boxes: + p = Path(self.img_files[i]) + img = cv2.imread(str(p)) + h, w = img.shape[:2] + for j, x in enumerate(l): + f = '%s%sclassifier%s%g_%g_%s' % (p.parent.parent, os.sep, os.sep, x[0], j, p.name) + if not os.path.exists(Path(f).parent): + os.makedirs(Path(f).parent) # make new output folder + + b = x[1:] * [w, h, w, h] # box + b[2:] = b[2:].max() # rectangle to square + b[2:] = b[2:] * 1.3 + 30 # pad + b = xywh2xyxy(b.reshape(-1, 4)).ravel().astype(np.int) + + b[[0, 2]] = np.clip(b[[0, 2]], 0, w) # clip boxes outside of image + b[[1, 3]] = np.clip(b[[1, 3]], 0, h) + assert cv2.imwrite(f, img[b[1]:b[3], b[0]:b[2]]), 'Failure extracting classifier boxes' + else: + ne += 1 # print('empty labels for image %s' % self.img_files[i]) # file empty + # os.system("rm '%s' '%s'" % (self.img_files[i], self.label_files[i])) # remove + + if rank in [-1, 0]: + pbar.desc = 'Scanning labels %s (%g found, %g missing, %g empty, %g duplicate, for %g images)' % ( + cache_path, nf, nm, ne, nd, n) + if nf == 0: + s = 'WARNING: No labels found in %s. See %s' % (os.path.dirname(file) + os.sep, help_url) + print(s) + assert not augment, '%s. Can not train without labels.' % s + # Cache images into memory for faster training (WARNING: large datasets may exceed system RAM) self.imgs = [None] * n if cache_images: - if cache_images == 'disk': - self.im_cache_dir = Path(Path(self.img_files[0]).parent.as_posix() + '_npy') - self.img_npy = [self.im_cache_dir / Path(f).with_suffix('.npy').name for f in self.img_files] - self.im_cache_dir.mkdir(parents=True, exist_ok=True) gb = 0 # Gigabytes of cached images + pbar = tqdm(range(len(self.img_files)), desc='Caching images') self.img_hw0, self.img_hw = [None] * n, [None] * n - results = ThreadPool(8).imap(lambda x: load_image(*x), zip(repeat(self), range(n))) - pbar = tqdm(enumerate(results), total=n) - for i, x in pbar: - if cache_images == 'disk': - if not self.img_npy[i].exists(): - np.save(self.img_npy[i].as_posix(), x[0]) - gb += self.img_npy[i].stat().st_size - else: - self.imgs[i], self.img_hw0[i], self.img_hw[i] = x - gb += self.imgs[i].nbytes - pbar.desc = f'{prefix}Caching images ({gb / 1E9:.1f}GB)' - pbar.close() + for i in pbar: # max 10k images + self.imgs[i], self.img_hw0[i], self.img_hw[i] = load_image(self, i) # img, hw_original, hw_resized + gb += self.imgs[i].nbytes + pbar.desc = 'Caching images (%.1fGB)' % (gb / 1E9) - def cache_labels(self, path=Path('./labels.cache'), prefix=''): + def cache_labels(self, path='labels.cache'): # Cache dataset labels, check images and read shapes x = {} # dict - nm, nf, ne, nc = 0, 0, 0, 0 # number missing, found, empty, duplicate pbar = tqdm(zip(self.img_files, self.label_files), desc='Scanning images', total=len(self.img_files)) - for i, (im_file, lb_file) in enumerate(pbar): + for (img, label) in pbar: try: - # verify images - im = Image.open(im_file) - im.verify() # PIL verify - shape = exif_size(im) # image size - segments = [] # instance segments - assert (shape[0] > 9) & (shape[1] > 9), f'image size {shape} <10 pixels' - assert im.format.lower() in img_formats, f'invalid image format {im.format}' - - # verify labels - if os.path.isfile(lb_file): - nf += 1 # label found - with open(lb_file, 'r') as f: - l = [x.split() for x in f.read().strip().splitlines()] - if any([len(x) > 8 for x in l]): # is segment - classes = np.array([x[0] for x in l], dtype=np.float32) - segments = [np.array(x[1:], dtype=np.float32).reshape(-1, 2) for x in l] # (cls, xy1...) - l = np.concatenate((classes.reshape(-1, 1), segments2boxes(segments)), 1) # (cls, xywh) - l = np.array(l, dtype=np.float32) - if len(l): - assert l.shape[1] == 5, 'labels require 5 columns each' - assert (l >= 0).all(), 'negative labels' - assert (l[:, 1:] <= 1).all(), 'non-normalized or out of bounds coordinate labels' - assert np.unique(l, axis=0).shape[0] == l.shape[0], 'duplicate labels' - else: - ne += 1 # label empty - l = np.zeros((0, 5), dtype=np.float32) - else: - nm += 1 # label missing + l = [] + image = Image.open(img) + image.verify() # PIL verify + # _ = io.imread(img) # skimage verify (from skimage import io) + shape = exif_size(image) # image size + assert (shape[0] > 9) & (shape[1] > 9), 'image size <10 pixels' + if os.path.isfile(label): + with open(label, 'r') as f: + l = np.array([x.split() for x in f.read().splitlines()], dtype=np.float32) # labels + if len(l) == 0: l = np.zeros((0, 5), dtype=np.float32) - x[im_file] = [l, shape, segments] + x[img] = [l, shape] except Exception as e: - nc += 1 - print(f'{prefix}WARNING: Ignoring corrupted image and/or label {im_file}: {e}') - - pbar.desc = f"{prefix}Scanning '{path.parent / path.stem}' images and labels... " \ - f"{nf} found, {nm} missing, {ne} empty, {nc} corrupted" - pbar.close() - - if nf == 0: - print(f'{prefix}WARNING: No labels found in {path}. See {help_url}') + x[img] = [None, None] + print('WARNING: %s: %s' % (img, e)) x['hash'] = get_hash(self.label_files + self.img_files) - x['results'] = nf, nm, ne, nc, i + 1 - x['version'] = 0.1 # cache version torch.save(x, path) # save for next time - logging.info(f'{prefix}New cache created: {path}') return x def __len__(self): @@ -532,24 +479,18 @@ class LoadImagesAndLabels(Dataset): # for training/testing # return self def __getitem__(self, index): - index = self.indices[index] # linear, shuffled, or image_weights + if self.image_weights: + index = self.indices[index] hyp = self.hyp - mosaic = self.mosaic and random.random() < hyp['mosaic'] - if mosaic: + if self.mosaic: # Load mosaic - if random.random() < 0.8: - img, labels = load_mosaic(self, index) - else: - img, labels = load_mosaic9(self, index) + img, labels = load_mosaic(self, index) shapes = None # MixUp https://arxiv.org/pdf/1710.09412.pdf if random.random() < hyp['mixup']: - if random.random() < 0.8: - img2, labels2 = load_mosaic(self, random.randint(0, len(self.labels) - 1)) - else: - img2, labels2 = load_mosaic9(self, random.randint(0, len(self.labels) - 1)) + img2, labels2 = load_mosaic(self, random.randint(0, len(self.labels) - 1)) r = np.random.beta(8.0, 8.0) # mixup ratio, alpha=beta=8.0 img = (img * r + img2 * (1 - r)).astype(np.uint8) labels = np.concatenate((labels, labels2), 0) @@ -563,22 +504,26 @@ class LoadImagesAndLabels(Dataset): # for training/testing img, ratio, pad = letterbox(img, shape, auto=False, scaleup=self.augment) shapes = (h0, w0), ((h / h0, w / w0), pad) # for COCO mAP rescaling - labels = self.labels[index].copy() - if labels.size: # normalized xywh to pixel xyxy format - labels[:, 1:] = xywhn2xyxy(labels[:, 1:], ratio[0] * w, ratio[1] * h, padw=pad[0], padh=pad[1]) + # Load labels + labels = [] + x = self.labels[index] + if x.size > 0: + # Normalized xywh to pixel xyxy format + labels = x.copy() + labels[:, 1] = ratio[0] * w * (x[:, 1] - x[:, 3] / 2) + pad[0] # pad width + labels[:, 2] = ratio[1] * h * (x[:, 2] - x[:, 4] / 2) + pad[1] # pad height + labels[:, 3] = ratio[0] * w * (x[:, 1] + x[:, 3] / 2) + pad[0] + labels[:, 4] = ratio[1] * h * (x[:, 2] + x[:, 4] / 2) + pad[1] if self.augment: # Augment imagespace - if not mosaic: + if not self.mosaic: img, labels = random_perspective(img, labels, degrees=hyp['degrees'], translate=hyp['translate'], scale=hyp['scale'], shear=hyp['shear'], perspective=hyp['perspective']) - - - #img, labels = self.albumentations(img, labels) # Augment colorspace augment_hsv(img, hgain=hyp['hsv_h'], sgain=hyp['hsv_s'], vgain=hyp['hsv_v']) @@ -586,18 +531,6 @@ class LoadImagesAndLabels(Dataset): # for training/testing # Apply cutouts # if random.random() < 0.9: # labels = cutout(img, labels) - - if random.random() < hyp['paste_in']: - sample_labels, sample_images, sample_masks = [], [], [] - while len(sample_labels) < 30: - sample_labels_, sample_images_, sample_masks_ = load_samples(self, random.randint(0, len(self.labels) - 1)) - sample_labels += sample_labels_ - sample_images += sample_images_ - sample_masks += sample_masks_ - #print(len(sample_labels)) - if len(sample_labels) == 0: - break - labels = pastein(img, labels, sample_labels, sample_images, sample_masks) nL = len(labels) # number of labels if nL: @@ -635,32 +568,6 @@ class LoadImagesAndLabels(Dataset): # for training/testing l[:, 0] = i # add target image index for build_targets() return torch.stack(img, 0), torch.cat(label, 0), path, shapes - @staticmethod - def collate_fn4(batch): - img, label, path, shapes = zip(*batch) # transposed - n = len(shapes) // 4 - img4, label4, path4, shapes4 = [], [], path[:n], shapes[:n] - - ho = torch.tensor([[0., 0, 0, 1, 0, 0]]) - wo = torch.tensor([[0., 0, 1, 0, 0, 0]]) - s = torch.tensor([[1, 1, .5, .5, .5, .5]]) # scale - for i in range(n): # zidane torch.zeros(16,3,720,1280) # BCHW - i *= 4 - if random.random() < 0.5: - im = F.interpolate(img[i].unsqueeze(0).float(), scale_factor=2., mode='bilinear', align_corners=False)[ - 0].type(img[i].type()) - l = label[i] - else: - im = torch.cat((torch.cat((img[i], img[i + 1]), 1), torch.cat((img[i + 2], img[i + 3]), 1)), 2) - l = torch.cat((label[i], label[i + 1] + ho, label[i + 2] + wo, label[i + 3] + ho + wo), 0) * s - img4.append(im) - label4.append(l) - - for i, l in enumerate(label4): - l[:, 0] = i # add target image index for build_targets() - - return torch.stack(img4, 0), torch.cat(label4, 0), path4, shapes4 - # Ancillary functions -------------------------------------------------------------------------------------------------- def load_image(self, index): @@ -693,25 +600,19 @@ def augment_hsv(img, hgain=0.5, sgain=0.5, vgain=0.5): img_hsv = cv2.merge((cv2.LUT(hue, lut_hue), cv2.LUT(sat, lut_sat), cv2.LUT(val, lut_val))).astype(dtype) cv2.cvtColor(img_hsv, cv2.COLOR_HSV2BGR, dst=img) # no return needed - -def hist_equalize(img, clahe=True, bgr=False): - # Equalize histogram on BGR image 'img' with img.shape(n,m,3) and range 0-255 - yuv = cv2.cvtColor(img, cv2.COLOR_BGR2YUV if bgr else cv2.COLOR_RGB2YUV) - if clahe: - c = cv2.createCLAHE(clipLimit=2.0, tileGridSize=(8, 8)) - yuv[:, :, 0] = c.apply(yuv[:, :, 0]) - else: - yuv[:, :, 0] = cv2.equalizeHist(yuv[:, :, 0]) # equalize Y channel histogram - return cv2.cvtColor(yuv, cv2.COLOR_YUV2BGR if bgr else cv2.COLOR_YUV2RGB) # convert YUV image to RGB + # Histogram equalization + # if random.random() < 0.2: + # for i in range(3): + # img[:, :, i] = cv2.equalizeHist(img[:, :, i]) def load_mosaic(self, index): - # loads images in a 4-mosaic + # loads images in a mosaic - labels4, segments4 = [], [] + labels4 = [] s = self.img_size yc, xc = [int(random.uniform(-x, 2 * s + x)) for x in self.mosaic_border] # mosaic center x, y - indices = [index] + random.choices(self.indices, k=3) # 3 additional image indices + indices = [index] + [random.randint(0, len(self.labels) - 1) for _ in range(3)] # 3 additional image indices for i, index in enumerate(indices): # Load image img, _, (h, w) = load_image(self, index) @@ -726,7 +627,7 @@ def load_mosaic(self, index): x1b, y1b, x2b, y2b = 0, h - (y2a - y1a), min(w, x2a - x1a), h elif i == 2: # bottom left x1a, y1a, x2a, y2a = max(xc - w, 0), yc, xc, min(s * 2, yc + h) - x1b, y1b, x2b, y2b = w - (x2a - x1a), 0, w, min(y2a - y1a, h) + x1b, y1b, x2b, y2b = w - (x2a - x1a), 0, max(xc, w), min(y2a - y1a, h) elif i == 3: # bottom right x1a, y1a, x2a, y2a = xc, yc, min(xc + w, s * 2), min(s * 2, yc + h) x1b, y1b, x2b, y2b = 0, 0, min(w, x2a - x1a), min(y2a - y1a, h) @@ -736,100 +637,27 @@ def load_mosaic(self, index): padh = y1a - y1b # Labels - labels, segments = self.labels[index].copy(), self.segments[index].copy() - if labels.size: - labels[:, 1:] = xywhn2xyxy(labels[:, 1:], w, h, padw, padh) # normalized xywh to pixel xyxy format - segments = [xyn2xy(x, w, h, padw, padh) for x in segments] + x = self.labels[index] + labels = x.copy() + if x.size > 0: # Normalized xywh to pixel xyxy format + labels[:, 1] = w * (x[:, 1] - x[:, 3] / 2) + padw + labels[:, 2] = h * (x[:, 2] - x[:, 4] / 2) + padh + labels[:, 3] = w * (x[:, 1] + x[:, 3] / 2) + padw + labels[:, 4] = h * (x[:, 2] + x[:, 4] / 2) + padh labels4.append(labels) - segments4.extend(segments) - - # Concat/clip labels - labels4 = np.concatenate(labels4, 0) - for x in (labels4[:, 1:], *segments4): - np.clip(x, 0, 2 * s, out=x) # clip when using random_perspective() - # img4, labels4 = replicate(img4, labels4) # replicate - - # Augment - #img4, labels4, segments4 = remove_background(img4, labels4, segments4) - #sample_segments(img4, labels4, segments4, probability=self.hyp['copy_paste']) - img4, labels4, segments4 = copy_paste(img4, labels4, segments4, probability=self.hyp['copy_paste']) - img4, labels4 = random_perspective(img4, labels4, segments4, - degrees=self.hyp['degrees'], - translate=self.hyp['translate'], - scale=self.hyp['scale'], - shear=self.hyp['shear'], - perspective=self.hyp['perspective'], - border=self.mosaic_border) # border to remove - - return img4, labels4 - - -def load_mosaic9(self, index): - # loads images in a 9-mosaic - - labels9, segments9 = [], [] - s = self.img_size - indices = [index] + random.choices(self.indices, k=8) # 8 additional image indices - for i, index in enumerate(indices): - # Load image - img, _, (h, w) = load_image(self, index) - - # place img in img9 - if i == 0: # center - img9 = np.full((s * 3, s * 3, img.shape[2]), 114, dtype=np.uint8) # base image with 4 tiles - h0, w0 = h, w - c = s, s, s + w, s + h # xmin, ymin, xmax, ymax (base) coordinates - elif i == 1: # top - c = s, s - h, s + w, s - elif i == 2: # top right - c = s + wp, s - h, s + wp + w, s - elif i == 3: # right - c = s + w0, s, s + w0 + w, s + h - elif i == 4: # bottom right - c = s + w0, s + hp, s + w0 + w, s + hp + h - elif i == 5: # bottom - c = s + w0 - w, s + h0, s + w0, s + h0 + h - elif i == 6: # bottom left - c = s + w0 - wp - w, s + h0, s + w0 - wp, s + h0 + h - elif i == 7: # left - c = s - w, s + h0 - h, s, s + h0 - elif i == 8: # top left - c = s - w, s + h0 - hp - h, s, s + h0 - hp - - padx, pady = c[:2] - x1, y1, x2, y2 = [max(x, 0) for x in c] # allocate coords - - # Labels - labels, segments = self.labels[index].copy(), self.segments[index].copy() - if labels.size: - labels[:, 1:] = xywhn2xyxy(labels[:, 1:], w, h, padx, pady) # normalized xywh to pixel xyxy format - segments = [xyn2xy(x, w, h, padx, pady) for x in segments] - labels9.append(labels) - segments9.extend(segments) - - # Image - img9[y1:y2, x1:x2] = img[y1 - pady:, x1 - padx:] # img9[ymin:ymax, xmin:xmax] - hp, wp = h, w # height, width previous - - # Offset - yc, xc = [int(random.uniform(0, s)) for _ in self.mosaic_border] # mosaic center x, y - img9 = img9[yc:yc + 2 * s, xc:xc + 2 * s] # Concat/clip labels - labels9 = np.concatenate(labels9, 0) - labels9[:, [1, 3]] -= xc - labels9[:, [2, 4]] -= yc - c = np.array([xc, yc]) # centers - segments9 = [x - c for x in segments9] + if len(labels4): + labels4 = np.concatenate(labels4, 0) + # np.clip(labels4[:, 1:] - s / 2, 0, s, out=labels4[:, 1:]) # use with center crop + np.clip(labels4[:, 1:], 0, 2 * s, out=labels4[:, 1:]) # use with random_affine - for x in (labels9[:, 1:], *segments9): - np.clip(x, 0, 2 * s, out=x) # clip when using random_perspective() - # img9, labels9 = replicate(img9, labels9) # replicate + # Replicate + # img4, labels4 = replicate(img4, labels4) # Augment - #img9, labels9, segments9 = remove_background(img9, labels9, segments9) - img9, labels9, segments9 = copy_paste(img9, labels9, segments9, probability=self.hyp['copy_paste']) - img9, labels9 = random_perspective(img9, labels9, segments9, + # img4 = img4[s // 2: int(s * 1.5), s // 2:int(s * 1.5)] # center crop (WARNING, requires box pruning) + img4, labels4 = random_perspective(img4, labels4, degrees=self.hyp['degrees'], translate=self.hyp['translate'], scale=self.hyp['scale'], @@ -837,131 +665,7 @@ def load_mosaic9(self, index): perspective=self.hyp['perspective'], border=self.mosaic_border) # border to remove - return img9, labels9 - - -def load_samples(self, index): - # loads images in a 4-mosaic - - labels4, segments4 = [], [] - s = self.img_size - yc, xc = [int(random.uniform(-x, 2 * s + x)) for x in self.mosaic_border] # mosaic center x, y - indices = [index] + random.choices(self.indices, k=3) # 3 additional image indices - for i, index in enumerate(indices): - # Load image - img, _, (h, w) = load_image(self, index) - - # place img in img4 - if i == 0: # top left - img4 = np.full((s * 2, s * 2, img.shape[2]), 114, dtype=np.uint8) # base image with 4 tiles - x1a, y1a, x2a, y2a = max(xc - w, 0), max(yc - h, 0), xc, yc # xmin, ymin, xmax, ymax (large image) - x1b, y1b, x2b, y2b = w - (x2a - x1a), h - (y2a - y1a), w, h # xmin, ymin, xmax, ymax (small image) - elif i == 1: # top right - x1a, y1a, x2a, y2a = xc, max(yc - h, 0), min(xc + w, s * 2), yc - x1b, y1b, x2b, y2b = 0, h - (y2a - y1a), min(w, x2a - x1a), h - elif i == 2: # bottom left - x1a, y1a, x2a, y2a = max(xc - w, 0), yc, xc, min(s * 2, yc + h) - x1b, y1b, x2b, y2b = w - (x2a - x1a), 0, w, min(y2a - y1a, h) - elif i == 3: # bottom right - x1a, y1a, x2a, y2a = xc, yc, min(xc + w, s * 2), min(s * 2, yc + h) - x1b, y1b, x2b, y2b = 0, 0, min(w, x2a - x1a), min(y2a - y1a, h) - - img4[y1a:y2a, x1a:x2a] = img[y1b:y2b, x1b:x2b] # img4[ymin:ymax, xmin:xmax] - padw = x1a - x1b - padh = y1a - y1b - - # Labels - labels, segments = self.labels[index].copy(), self.segments[index].copy() - if labels.size: - labels[:, 1:] = xywhn2xyxy(labels[:, 1:], w, h, padw, padh) # normalized xywh to pixel xyxy format - segments = [xyn2xy(x, w, h, padw, padh) for x in segments] - labels4.append(labels) - segments4.extend(segments) - - # Concat/clip labels - labels4 = np.concatenate(labels4, 0) - for x in (labels4[:, 1:], *segments4): - np.clip(x, 0, 2 * s, out=x) # clip when using random_perspective() - # img4, labels4 = replicate(img4, labels4) # replicate - - # Augment - #img4, labels4, segments4 = remove_background(img4, labels4, segments4) - sample_labels, sample_images, sample_masks = sample_segments(img4, labels4, segments4, probability=0.5) - - return sample_labels, sample_images, sample_masks - - -def copy_paste(img, labels, segments, probability=0.5): - # Implement Copy-Paste augmentation https://arxiv.org/abs/2012.07177, labels as nx5 np.array(cls, xyxy) - n = len(segments) - if probability and n: - h, w, c = img.shape # height, width, channels - im_new = np.zeros(img.shape, np.uint8) - for j in random.sample(range(n), k=round(probability * n)): - l, s = labels[j], segments[j] - box = w - l[3], l[2], w - l[1], l[4] - ioa = bbox_ioa(box, labels[:, 1:5]) # intersection over area - if (ioa < 0.30).all(): # allow 30% obscuration of existing labels - labels = np.concatenate((labels, [[l[0], *box]]), 0) - segments.append(np.concatenate((w - s[:, 0:1], s[:, 1:2]), 1)) - cv2.drawContours(im_new, [segments[j].astype(np.int32)], -1, (255, 255, 255), cv2.FILLED) - - result = cv2.bitwise_and(src1=img, src2=im_new) - result = cv2.flip(result, 1) # augment segments (flip left-right) - i = result > 0 # pixels to replace - # i[:, :] = result.max(2).reshape(h, w, 1) # act over ch - img[i] = result[i] # cv2.imwrite('debug.jpg', img) # debug - - return img, labels, segments - - -def remove_background(img, labels, segments): - # Implement Copy-Paste augmentation https://arxiv.org/abs/2012.07177, labels as nx5 np.array(cls, xyxy) - n = len(segments) - h, w, c = img.shape # height, width, channels - im_new = np.zeros(img.shape, np.uint8) - img_new = np.ones(img.shape, np.uint8) * 114 - for j in range(n): - cv2.drawContours(im_new, [segments[j].astype(np.int32)], -1, (255, 255, 255), cv2.FILLED) - - result = cv2.bitwise_and(src1=img, src2=im_new) - - i = result > 0 # pixels to replace - img_new[i] = result[i] # cv2.imwrite('debug.jpg', img) # debug - - return img_new, labels, segments - - -def sample_segments(img, labels, segments, probability=0.5): - # Implement Copy-Paste augmentation https://arxiv.org/abs/2012.07177, labels as nx5 np.array(cls, xyxy) - n = len(segments) - sample_labels = [] - sample_images = [] - sample_masks = [] - if probability and n: - h, w, c = img.shape # height, width, channels - for j in random.sample(range(n), k=round(probability * n)): - l, s = labels[j], segments[j] - box = l[1].astype(int).clip(0,w-1), l[2].astype(int).clip(0,h-1), l[3].astype(int).clip(0,w-1), l[4].astype(int).clip(0,h-1) - - #print(box) - if (box[2] <= box[0]) or (box[3] <= box[1]): - continue - - sample_labels.append(l[0]) - - mask = np.zeros(img.shape, np.uint8) - - cv2.drawContours(mask, [segments[j].astype(np.int32)], -1, (255, 255, 255), cv2.FILLED) - sample_masks.append(mask[box[1]:box[3],box[0]:box[2],:]) - - result = cv2.bitwise_and(src1=img, src2=mask) - i = result > 0 # pixels to replace - mask[i] = result[i] # cv2.imwrite('debug.jpg', img) # debug - #print(box) - sample_images.append(mask[box[1]:box[3],box[0]:box[2],:]) - - return sample_labels, sample_images, sample_masks + return img4, labels4 def replicate(img, labels): @@ -981,8 +685,8 @@ def replicate(img, labels): return img, labels -def letterbox(img, new_shape=(640, 640), color=(114, 114, 114), auto=True, scaleFill=False, scaleup=True, stride=32): - # Resize and pad image while meeting stride-multiple constraints +def letterbox(img, new_shape=(640, 640), color=(114, 114, 114), auto=True, scaleFill=False, scaleup=True): + # Resize image to a 32-pixel-multiple rectangle https://github.com/ultralytics/yolov3/issues/232 shape = img.shape[:2] # current shape [height, width] if isinstance(new_shape, int): new_shape = (new_shape, new_shape) @@ -997,7 +701,7 @@ def letterbox(img, new_shape=(640, 640), color=(114, 114, 114), auto=True, scale new_unpad = int(round(shape[1] * r)), int(round(shape[0] * r)) dw, dh = new_shape[1] - new_unpad[0], new_shape[0] - new_unpad[1] # wh padding if auto: # minimum rectangle - dw, dh = np.mod(dw, stride), np.mod(dh, stride) # wh padding + dw, dh = np.mod(dw, 64), np.mod(dh, 64) # wh padding elif scaleFill: # stretch dw, dh = 0.0, 0.0 new_unpad = (new_shape[1], new_shape[0]) @@ -1014,8 +718,7 @@ def letterbox(img, new_shape=(640, 640), color=(114, 114, 114), auto=True, scale return img, ratio, (dw, dh) -def random_perspective(img, targets=(), segments=(), degrees=10, translate=.1, scale=.1, shear=10, perspective=0.0, - border=(0, 0)): +def random_perspective(img, targets=(), degrees=10, translate=.1, scale=.1, shear=10, perspective=0.0, border=(0, 0)): # torchvision.transforms.RandomAffine(degrees=(-10, 10), translate=(.1, .1), scale=(.9, 1.1), shear=(-10, 10)) # targets = [cls, xyxy] @@ -1036,7 +739,7 @@ def random_perspective(img, targets=(), segments=(), degrees=10, translate=.1, s R = np.eye(3) a = random.uniform(-degrees, degrees) # a += random.choice([-180, -90, 0, 90]) # add 90deg rotations to small rotations - s = random.uniform(1 - scale, 1.1 + scale) + s = random.uniform(1 - scale, 1 + scale) # s = 2 ** random.uniform(-scale, scale) R[:2] = cv2.getRotationMatrix2D(angle=a, center=(0, 0), scale=s) @@ -1067,72 +770,70 @@ def random_perspective(img, targets=(), segments=(), degrees=10, translate=.1, s # Transform label coordinates n = len(targets) if n: - use_segments = any(x.any() for x in segments) - new = np.zeros((n, 4)) - if use_segments: # warp segments - segments = resample_segments(segments) # upsample - for i, segment in enumerate(segments): - xy = np.ones((len(segment), 3)) - xy[:, :2] = segment - xy = xy @ M.T # transform - xy = xy[:, :2] / xy[:, 2:3] if perspective else xy[:, :2] # perspective rescale or affine - - # clip - new[i] = segment2box(xy, width, height) - - else: # warp boxes - xy = np.ones((n * 4, 3)) - xy[:, :2] = targets[:, [1, 2, 3, 4, 1, 4, 3, 2]].reshape(n * 4, 2) # x1y1, x2y2, x1y2, x2y1 - xy = xy @ M.T # transform - xy = (xy[:, :2] / xy[:, 2:3] if perspective else xy[:, :2]).reshape(n, 8) # perspective rescale or affine - - # create new boxes - x = xy[:, [0, 2, 4, 6]] - y = xy[:, [1, 3, 5, 7]] - new = np.concatenate((x.min(1), y.min(1), x.max(1), y.max(1))).reshape(4, n).T - - # clip - new[:, [0, 2]] = new[:, [0, 2]].clip(0, width) - new[:, [1, 3]] = new[:, [1, 3]].clip(0, height) + # warp points + xy = np.ones((n * 4, 3)) + xy[:, :2] = targets[:, [1, 2, 3, 4, 1, 4, 3, 2]].reshape(n * 4, 2) # x1y1, x2y2, x1y2, x2y1 + xy = xy @ M.T # transform + if perspective: + xy = (xy[:, :2] / xy[:, 2:3]).reshape(n, 8) # rescale + else: # affine + xy = xy[:, :2].reshape(n, 8) + + # create new boxes + x = xy[:, [0, 2, 4, 6]] + y = xy[:, [1, 3, 5, 7]] + xy = np.concatenate((x.min(1), y.min(1), x.max(1), y.max(1))).reshape(4, n).T + + # # apply angle-based reduction of bounding boxes + # radians = a * math.pi / 180 + # reduction = max(abs(math.sin(radians)), abs(math.cos(radians))) ** 0.5 + # x = (xy[:, 2] + xy[:, 0]) / 2 + # y = (xy[:, 3] + xy[:, 1]) / 2 + # w = (xy[:, 2] - xy[:, 0]) * reduction + # h = (xy[:, 3] - xy[:, 1]) * reduction + # xy = np.concatenate((x - w / 2, y - h / 2, x + w / 2, y + h / 2)).reshape(4, n).T + + # clip boxes + xy[:, [0, 2]] = xy[:, [0, 2]].clip(0, width) + xy[:, [1, 3]] = xy[:, [1, 3]].clip(0, height) # filter candidates - i = box_candidates(box1=targets[:, 1:5].T * s, box2=new.T, area_thr=0.01 if use_segments else 0.10) + i = box_candidates(box1=targets[:, 1:5].T * s, box2=xy.T) targets = targets[i] - targets[:, 1:5] = new[i] + targets[:, 1:5] = xy[i] return img, targets -def box_candidates(box1, box2, wh_thr=2, ar_thr=20, area_thr=0.1, eps=1e-16): # box1(4,n), box2(4,n) +def box_candidates(box1, box2, wh_thr=2, ar_thr=20, area_thr=0.1): # box1(4,n), box2(4,n) # Compute candidate boxes: box1 before augment, box2 after augment, wh_thr (pixels), aspect_ratio_thr, area_ratio w1, h1 = box1[2] - box1[0], box1[3] - box1[1] w2, h2 = box2[2] - box2[0], box2[3] - box2[1] - ar = np.maximum(w2 / (h2 + eps), h2 / (w2 + eps)) # aspect ratio - return (w2 > wh_thr) & (h2 > wh_thr) & (w2 * h2 / (w1 * h1 + eps) > area_thr) & (ar < ar_thr) # candidates + ar = np.maximum(w2 / (h2 + 1e-16), h2 / (w2 + 1e-16)) # aspect ratio + return (w2 > wh_thr) & (h2 > wh_thr) & (w2 * h2 / (w1 * h1 + 1e-16) > area_thr) & (ar < ar_thr) # candidates -def bbox_ioa(box1, box2): - # Returns the intersection over box2 area given box1, box2. box1 is 4, box2 is nx4. boxes are x1y1x2y2 - box2 = box2.transpose() +def cutout(image, labels): + # Applies image cutout augmentation https://arxiv.org/abs/1708.04552 + h, w = image.shape[:2] - # Get the coordinates of bounding boxes - b1_x1, b1_y1, b1_x2, b1_y2 = box1[0], box1[1], box1[2], box1[3] - b2_x1, b2_y1, b2_x2, b2_y2 = box2[0], box2[1], box2[2], box2[3] + def bbox_ioa(box1, box2): + # Returns the intersection over box2 area given box1, box2. box1 is 4, box2 is nx4. boxes are x1y1x2y2 + box2 = box2.transpose() - # Intersection area - inter_area = (np.minimum(b1_x2, b2_x2) - np.maximum(b1_x1, b2_x1)).clip(0) * \ - (np.minimum(b1_y2, b2_y2) - np.maximum(b1_y1, b2_y1)).clip(0) + # Get the coordinates of bounding boxes + b1_x1, b1_y1, b1_x2, b1_y2 = box1[0], box1[1], box1[2], box1[3] + b2_x1, b2_y1, b2_x2, b2_y2 = box2[0], box2[1], box2[2], box2[3] - # box2 area - box2_area = (b2_x2 - b2_x1) * (b2_y2 - b2_y1) + 1e-16 + # Intersection area + inter_area = (np.minimum(b1_x2, b2_x2) - np.maximum(b1_x1, b2_x1)).clip(0) * \ + (np.minimum(b1_y2, b2_y2) - np.maximum(b1_y1, b2_y1)).clip(0) - # Intersection over box2 area - return inter_area / box2_area - + # box2 area + box2_area = (b2_x2 - b2_x1) * (b2_y2 - b2_y1) + 1e-16 -def cutout(image, labels): - # Applies image cutout augmentation https://arxiv.org/abs/1708.04552 - h, w = image.shape[:2] + # Intersection over box2 area + return inter_area / box2_area # create random masks scales = [0.5] * 1 + [0.25] * 2 + [0.125] * 4 + [0.0625] * 8 + [0.03125] * 16 # image size fraction @@ -1156,88 +857,52 @@ def cutout(image, labels): labels = labels[ioa < 0.60] # remove >60% obscured labels return labels - - -def pastein(image, labels, sample_labels, sample_images, sample_masks): - # Applies image cutout augmentation https://arxiv.org/abs/1708.04552 - h, w = image.shape[:2] - - # create random masks - scales = [0.75] * 2 + [0.5] * 4 + [0.25] * 4 + [0.125] * 4 + [0.0625] * 6 # image size fraction - for s in scales: - if random.random() < 0.2: - continue - mask_h = random.randint(1, int(h * s)) - mask_w = random.randint(1, int(w * s)) - - # box - xmin = max(0, random.randint(0, w) - mask_w // 2) - ymin = max(0, random.randint(0, h) - mask_h // 2) - xmax = min(w, xmin + mask_w) - ymax = min(h, ymin + mask_h) - - box = np.array([xmin, ymin, xmax, ymax], dtype=np.float32) - if len(labels): - ioa = bbox_ioa(box, labels[:, 1:5]) # intersection over area - else: - ioa = np.zeros(1) - - if (ioa < 0.30).all() and len(sample_labels) and (xmax > xmin+20) and (ymax > ymin+20): # allow 30% obscuration of existing labels - sel_ind = random.randint(0, len(sample_labels)-1) - #print(len(sample_labels)) - #print(sel_ind) - #print((xmax-xmin, ymax-ymin)) - #print(image[ymin:ymax, xmin:xmax].shape) - #print([[sample_labels[sel_ind], *box]]) - #print(labels.shape) - hs, ws, cs = sample_images[sel_ind].shape - r_scale = min((ymax-ymin)/hs, (xmax-xmin)/ws) - r_w = int(ws*r_scale) - r_h = int(hs*r_scale) - - if (r_w > 10) and (r_h > 10): - r_mask = cv2.resize(sample_masks[sel_ind], (r_w, r_h)) - r_image = cv2.resize(sample_images[sel_ind], (r_w, r_h)) - temp_crop = image[ymin:ymin+r_h, xmin:xmin+r_w] - m_ind = r_mask > 0 - if m_ind.astype(np.int).sum() > 60: - temp_crop[m_ind] = r_image[m_ind] - #print(sample_labels[sel_ind]) - #print(sample_images[sel_ind].shape) - #print(temp_crop.shape) - box = np.array([xmin, ymin, xmin+r_w, ymin+r_h], dtype=np.float32) - if len(labels): - labels = np.concatenate((labels, [[sample_labels[sel_ind], *box]]), 0) - else: - labels = np.array([[sample_labels[sel_ind], *box]]) - - image[ymin:ymin+r_h, xmin:xmin+r_w] = temp_crop - - return labels -class Albumentations: - # YOLOv5 Albumentations class (optional, only used if package is installed) - def __init__(self): - self.transform = None - import albumentations as A - self.transform = A.Compose([ - A.CLAHE(p=0.01), - A.RandomBrightnessContrast(brightness_limit=0.2, contrast_limit=0.2, p=0.01), - A.RandomGamma(gamma_limit=[80, 120], p=0.01), - A.Blur(p=0.01), - A.MedianBlur(p=0.01), - A.ToGray(p=0.01), - A.ImageCompression(quality_lower=75, p=0.01),], - bbox_params=A.BboxParams(format='pascal_voc', label_fields=['class_labels'])) - - #logging.info(colorstr('albumentations: ') + ', '.join(f'{x}' for x in self.transform.transforms if x.p)) - - def __call__(self, im, labels, p=1.0): - if self.transform and random.random() < p: - new = self.transform(image=im, bboxes=labels[:, 1:], class_labels=labels[:, 0]) # transformed - im, labels = new['image'], np.array([[c, *b] for c, b in zip(new['class_labels'], new['bboxes'])]) - return im, labels +def reduce_img_size(path='path/images', img_size=1024): # from utils.datasets import *; reduce_img_size() + # creates a new ./images_reduced folder with reduced size images of maximum size img_size + path_new = path + '_reduced' # reduced images path + create_folder(path_new) + for f in tqdm(glob.glob('%s/*.*' % path)): + try: + img = cv2.imread(f) + h, w = img.shape[:2] + r = img_size / max(h, w) # size ratio + if r < 1.0: + img = cv2.resize(img, (int(w * r), int(h * r)), interpolation=cv2.INTER_AREA) # _LINEAR fastest + fnew = f.replace(path, path_new) # .replace(Path(f).suffix, '.jpg') + cv2.imwrite(fnew, img) + except: + print('WARNING: image failure %s' % f) + + +def recursive_dataset2bmp(dataset='path/dataset_bmp'): # from utils.datasets import *; recursive_dataset2bmp() + # Converts dataset to bmp (for faster training) + formats = [x.lower() for x in img_formats] + [x.upper() for x in img_formats] + for a, b, files in os.walk(dataset): + for file in tqdm(files, desc=a): + p = a + '/' + file + s = Path(file).suffix + if s == '.txt': # replace text + with open(p, 'r') as f: + lines = f.read() + for f in formats: + lines = lines.replace(f, '.bmp') + with open(p, 'w') as f: + f.write(lines) + elif s in formats: # replace image + cv2.imwrite(p.replace(s, '.bmp'), cv2.imread(p)) + if s != '.bmp': + os.system("rm '%s'" % p) + + +def imagelist2folder(path='path/images.txt'): # from utils.datasets import *; imagelist2folder() + # Copies all the images in a text file (list of images) into a folder + create_folder(path[:-4]) + with open(path, 'r') as f: + for line in f.read().splitlines(): + os.system('cp "%s" %s' % (line, path[:-4])) + print(line) def create_folder(path='./new'): @@ -1245,76 +910,3 @@ def create_folder(path='./new'): if os.path.exists(path): shutil.rmtree(path) # delete output folder os.makedirs(path) # make new output folder - - -def flatten_recursive(path='../coco'): - # Flatten a recursive directory by bringing all files to top level - new_path = Path(path + '_flat') - create_folder(new_path) - for file in tqdm(glob.glob(str(Path(path)) + '/**/*.*', recursive=True)): - shutil.copyfile(file, new_path / Path(file).name) - - -def extract_boxes(path='../coco/'): # from utils.datasets import *; extract_boxes('../coco128') - # Convert detection dataset into classification dataset, with one directory per class - - path = Path(path) # images dir - shutil.rmtree(path / 'classifier') if (path / 'classifier').is_dir() else None # remove existing - files = list(path.rglob('*.*')) - n = len(files) # number of files - for im_file in tqdm(files, total=n): - if im_file.suffix[1:] in img_formats: - # image - im = cv2.imread(str(im_file))[..., ::-1] # BGR to RGB - h, w = im.shape[:2] - - # labels - lb_file = Path(img2label_paths([str(im_file)])[0]) - if Path(lb_file).exists(): - with open(lb_file, 'r') as f: - lb = np.array([x.split() for x in f.read().strip().splitlines()], dtype=np.float32) # labels - - for j, x in enumerate(lb): - c = int(x[0]) # class - f = (path / 'classifier') / f'{c}' / f'{path.stem}_{im_file.stem}_{j}.jpg' # new filename - if not f.parent.is_dir(): - f.parent.mkdir(parents=True) - - b = x[1:] * [w, h, w, h] # box - # b[2:] = b[2:].max() # rectangle to square - b[2:] = b[2:] * 1.2 + 3 # pad - b = xywh2xyxy(b.reshape(-1, 4)).ravel().astype(np.int) - - b[[0, 2]] = np.clip(b[[0, 2]], 0, w) # clip boxes outside of image - b[[1, 3]] = np.clip(b[[1, 3]], 0, h) - assert cv2.imwrite(str(f), im[b[1]:b[3], b[0]:b[2]]), f'box failure in {f}' - - -def autosplit(path='../coco', weights=(0.9, 0.1, 0.0), annotated_only=False): - """ Autosplit a dataset into train/val/test splits and save path/autosplit_*.txt files - Usage: from utils.datasets import *; autosplit('../coco') - Arguments - path: Path to images directory - weights: Train, val, test weights (list) - annotated_only: Only use images with an annotated txt file - """ - path = Path(path) # images dir - files = sum([list(path.rglob(f"*.{img_ext}")) for img_ext in img_formats], []) # image files only - n = len(files) # number of files - indices = random.choices([0, 1, 2], weights=weights, k=n) # assign each image to a split - - txt = ['autosplit_train.txt', 'autosplit_val.txt', 'autosplit_test.txt'] # 3 txt files - [(path / x).unlink() for x in txt if (path / x).exists()] # remove existing - - print(f'Autosplitting images from {path}' + ', using *.txt labeled images only' * annotated_only) - for i, img in tqdm(zip(indices, files), total=n): - if not annotated_only or Path(img2label_paths([str(img)])[0]).exists(): # check label - with open(path / txt[i], 'a') as f: - f.write(str(img) + '\n') # add image to txt file - - -def load_segmentations(self, index): - key = '/work/handsomejw66/coco17/' + self.img_files[index] - #print(key) - # /work/handsomejw66/coco17/ - return self.segs[key] diff --git a/utils/general.py b/utils/general.py index 7dc53eb..4da75d0 100644 --- a/utils/general.py +++ b/utils/general.py @@ -1,33 +1,49 @@ -# YOLOR general utils - import glob -import logging import math import os -import platform import random -import re +import shutil import subprocess import time +import logging +from contextlib import contextmanager +from copy import copy from pathlib import Path +import platform import cv2 +import matplotlib +import matplotlib.pyplot as plt import numpy as np -import pandas as pd import torch +import torch.nn as nn import torchvision import yaml +from scipy.cluster.vq import kmeans +from scipy.signal import butter, filtfilt +from tqdm import tqdm -from utils.google_utils import gsutil_getsize -from utils.metrics import fitness -from utils.torch_utils import init_torch_seeds +from utils.torch_utils import init_seeds, is_parallel -# Settings +# Set printoptions torch.set_printoptions(linewidth=320, precision=5, profile='long') np.set_printoptions(linewidth=320, formatter={'float_kind': '{:11.5g}'.format}) # format short g, %precision=5 -pd.options.display.max_columns = 10 -cv2.setNumThreads(0) # prevent OpenCV from multithreading (incompatible with PyTorch DataLoader) -os.environ['NUMEXPR_MAX_THREADS'] = str(min(os.cpu_count(), 8)) # NumExpr max threads +matplotlib.rc('font', **{'size': 11}) + +# Prevent OpenCV from multithreading (to use PyTorch DataLoader) +cv2.setNumThreads(0) + + +@contextmanager +def torch_distributed_zero_first(local_rank: int): + """ + Decorator to make all processes in distributed training wait for each local_master to do something. + """ + if local_rank not in [-1, 0]: + torch.distributed.barrier() + yield + if local_rank == 0: + torch.distributed.barrier() def set_logging(rank=-1): @@ -37,87 +53,23 @@ def set_logging(rank=-1): def init_seeds(seed=0): - # Initialize random number generator (RNG) seeds random.seed(seed) np.random.seed(seed) - init_torch_seeds(seed) + init_seeds(seed=seed) -def get_latest_run(search_dir='.'): +def get_latest_run(search_dir='./runs'): # Return path to most recent 'last.pt' in /runs (i.e. to --resume from) last_list = glob.glob(f'{search_dir}/**/last*.pt', recursive=True) - return max(last_list, key=os.path.getctime) if last_list else '' - - -def isdocker(): - # Is environment a Docker container - return Path('/workspace').exists() # or Path('/.dockerenv').exists() - - -def emojis(str=''): - # Return platform-dependent emoji-safe version of string - return str.encode().decode('ascii', 'ignore') if platform.system() == 'Windows' else str - - -def check_online(): - # Check internet connectivity - import socket - try: - socket.create_connection(("1.1.1.1", 443), 5) # check host accesability - return True - except OSError: - return False + return max(last_list, key=os.path.getctime) def check_git_status(): - # Recommend 'git pull' if code is out of date - print(colorstr('github: '), end='') - try: - assert Path('.git').exists(), 'skipping check (not a git repository)' - assert not isdocker(), 'skipping check (Docker image)' - assert check_online(), 'skipping check (offline)' - - cmd = 'git fetch && git config --get remote.origin.url' - url = subprocess.check_output(cmd, shell=True).decode().strip().rstrip('.git') # github repo url - branch = subprocess.check_output('git rev-parse --abbrev-ref HEAD', shell=True).decode().strip() # checked out - n = int(subprocess.check_output(f'git rev-list {branch}..origin/master --count', shell=True)) # commits behind - if n > 0: - s = f"⚠️ WARNING: code is out of date by {n} commit{'s' * (n > 1)}. " \ - f"Use 'git pull' to update or 'git clone {url}' to download latest." - else: - s = f'up to date with {url} ✅' - print(emojis(s)) # emoji-safe - except Exception as e: - print(e) - - -def check_requirements(requirements='requirements.txt', exclude=()): - # Check installed dependencies meet requirements (pass *.txt file or list of packages) - import pkg_resources as pkg - prefix = colorstr('red', 'bold', 'requirements:') - if isinstance(requirements, (str, Path)): # requirements.txt file - file = Path(requirements) - if not file.exists(): - print(f"{prefix} {file.resolve()} not found, check failed.") - return - requirements = [f'{x.name}{x.specifier}' for x in pkg.parse_requirements(file.open()) if x.name not in exclude] - else: # list or tuple of packages - requirements = [x for x in requirements if x not in exclude] - - n = 0 # number of packages updates - for r in requirements: - try: - pkg.require(r) - except Exception as e: # DistributionNotFound or VersionConflict if requirements not met - n += 1 - print(f"{prefix} {e.req} not found and is required by YOLOR, attempting auto-update...") - print(subprocess.check_output(f"pip install '{e.req}'", shell=True).decode()) - - if n: # if packages updated - source = file.resolve() if 'file' in locals() else requirements - s = f"{prefix} {n} package{'s' * (n > 1)} updated per {source}\n" \ - f"{prefix} ⚠️ {colorstr('bold', 'Restart runtime or rerun command for updates to take effect')}\n" - print(emojis(s)) # emoji-safe + # Suggest 'git pull' if repo is out of date + if platform.system() in ['Linux', 'Darwin'] and not os.path.isfile('/.dockerenv'): + s = subprocess.check_output('if [ -d .git ]; then git fetch && git status -uno; fi', shell=True).decode('utf-8') + if 'Your branch is behind' in s: + print(s[s.find('Your branch is behind'):s.find('\n\n')] + '\n') def check_img_size(img_size, s=32): @@ -128,43 +80,76 @@ def check_img_size(img_size, s=32): return new_size -def check_imshow(): - # Check if environment supports image displays - try: - assert not isdocker(), 'cv2.imshow() is disabled in Docker environments' - cv2.imshow('test', np.zeros((1, 1, 3))) - cv2.waitKey(1) - cv2.destroyAllWindows() - cv2.waitKey(1) - return True - except Exception as e: - print(f'WARNING: Environment does not support cv2.imshow() or PIL Image.show() image displays\n{e}') - return False +def check_anchors(dataset, model, thr=4.0, imgsz=640): + # Check anchor fit to data, recompute if necessary + print('\nAnalyzing anchors... ', end='') + m = model.module.model[-1] if hasattr(model, 'module') else model.model[-1] # Detect() + shapes = imgsz * dataset.shapes / dataset.shapes.max(1, keepdims=True) + scale = np.random.uniform(0.9, 1.1, size=(shapes.shape[0], 1)) # augment scale + wh = torch.tensor(np.concatenate([l[:, 3:5] * s for s, l in zip(shapes * scale, dataset.labels)])).float() # wh + + def metric(k): # compute metric + r = wh[:, None] / k[None] + x = torch.min(r, 1. / r).min(2)[0] # ratio metric + best = x.max(1)[0] # best_x + aat = (x > 1. / thr).float().sum(1).mean() # anchors above threshold + bpr = (best > 1. / thr).float().mean() # best possible recall + return bpr, aat + + bpr, aat = metric(m.anchor_grid.clone().cpu().view(-1, 2)) + print('anchors/target = %.2f, Best Possible Recall (BPR) = %.4f' % (aat, bpr), end='') + if bpr < 0.98: # threshold to recompute + print('. Attempting to generate improved anchors, please wait...' % bpr) + na = m.anchor_grid.numel() // 2 # number of anchors + new_anchors = kmean_anchors(dataset, n=na, img_size=imgsz, thr=thr, gen=1000, verbose=False) + new_bpr = metric(new_anchors.reshape(-1, 2))[0] + if new_bpr > bpr: # replace anchors + new_anchors = torch.tensor(new_anchors, device=m.anchors.device).type_as(m.anchors) + m.anchor_grid[:] = new_anchors.clone().view_as(m.anchor_grid) # for inference + m.anchors[:] = new_anchors.clone().view_as(m.anchors) / m.stride.to(m.anchors.device).view(-1, 1, 1) # loss + check_anchor_order(m) + print('New anchors saved to model. Update model *.yaml to use these anchors in the future.') + else: + print('Original anchors better than new anchors. Proceeding with original anchors.') + print('') # newline + + +def check_anchor_order(m): + # Check anchor order against stride order for YOLOv5 Detect() module m, and correct if necessary + a = m.anchor_grid.prod(-1).view(-1) # anchor area + da = a[-1] - a[0] # delta a + ds = m.stride[-1] - m.stride[0] # delta s + if da.sign() != ds.sign(): # same order + print('Reversing anchor order') + m.anchors[:] = m.anchors.flip(0) + m.anchor_grid[:] = m.anchor_grid.flip(0) def check_file(file): # Search for file if not found - if Path(file).is_file() or file == '': + if os.path.isfile(file) or file == '': return file else: files = glob.glob('./**/' + file, recursive=True) # find file - assert len(files), f'File Not Found: {file}' # assert file was found - assert len(files) == 1, f"Multiple files match '{file}', specify exact path: {files}" # assert unique - return files[0] # return file + assert len(files), 'File Not Found: %s' % file # assert file was found + return files[0] # return first file if multiple found def check_dataset(dict): - # Download dataset if not found locally + # Download dataset if not found val, s = dict.get('val'), dict.get('download') if val and len(val): - val = [Path(x).resolve() for x in (val if isinstance(val, list) else [val])] # val path - if not all(x.exists() for x in val): - print('\nWARNING: Dataset not found, nonexistent paths: %s' % [str(x) for x in val if not x.exists()]) + val = [os.path.abspath(x) for x in (val if isinstance(val, list) else [val])] # val path + if not all(os.path.exists(x) for x in val): + print('\nWARNING: Dataset not found, nonexistant paths: %s' % [*val]) if s and len(s): # download script - print('Downloading %s ...' % s) + print('Attempting autodownload from: %s' % s) if s.startswith('http') and s.endswith('.zip'): # URL f = Path(s).name # filename - torch.hub.download_url_to_file(s, f) + if platform.system() == 'Darwin': # avoid MacOS python requests certificate error + os.system('curl -L %s -o %s' % (s, f)) + else: + torch.hub.download_url_to_file(s, f) r = os.system('unzip -q %s -d ../ && rm %s' % (f, f)) # unzip else: # bash script r = os.system(s) @@ -174,45 +159,10 @@ def check_dataset(dict): def make_divisible(x, divisor): - # Returns x evenly divisible by divisor + # Returns x evenly divisble by divisor return math.ceil(x / divisor) * divisor -def clean_str(s): - # Cleans a string by replacing special characters with underscore _ - return re.sub(pattern="[|@#!¡·$€%&()=?¿^*;:,¨´><+]", repl="_", string=s) - - -def one_cycle(y1=0.0, y2=1.0, steps=100): - # lambda function for sinusoidal ramp from y1 to y2 - return lambda x: ((1 - math.cos(x * math.pi / steps)) / 2) * (y2 - y1) + y1 - - -def colorstr(*input): - # Colors a string https://en.wikipedia.org/wiki/ANSI_escape_code, i.e. colorstr('blue', 'hello world') - *args, string = input if len(input) > 1 else ('blue', 'bold', input[0]) # color arguments, string - colors = {'black': '\033[30m', # basic colors - 'red': '\033[31m', - 'green': '\033[32m', - 'yellow': '\033[33m', - 'blue': '\033[34m', - 'magenta': '\033[35m', - 'cyan': '\033[36m', - 'white': '\033[37m', - 'bright_black': '\033[90m', # bright colors - 'bright_red': '\033[91m', - 'bright_green': '\033[92m', - 'bright_yellow': '\033[93m', - 'bright_blue': '\033[94m', - 'bright_magenta': '\033[95m', - 'bright_cyan': '\033[96m', - 'bright_white': '\033[97m', - 'end': '\033[0m', # misc - 'bold': '\033[1m', - 'underline': '\033[4m'} - return ''.join(colors[x] for x in args) + f'{string}' + colors['end'] - - def labels_to_class_weights(labels, nc=80): # Get class weights (inverse frequency) from training labels if labels[0] is None: # no labels loaded @@ -220,9 +170,9 @@ def labels_to_class_weights(labels, nc=80): labels = np.concatenate(labels, 0) # labels.shape = (866643, 5) for COCO classes = labels[:, 0].astype(np.int) # labels = [class xywh] - weights = np.bincount(classes, minlength=nc) # occurrences per class + weights = np.bincount(classes, minlength=nc) # occurences per class - # Prepend gridpoint count (for uCE training) + # Prepend gridpoint count (for uCE trianing) # gpi = ((320 / 32 * np.array([1, 2, 4])) ** 2 * 3).sum() # gridpoints per image # weights = np.hstack([gpi * len(labels) - weights.sum() * 9, weights * 9]) ** 0.5 # prepend gridpoints to start @@ -233,8 +183,9 @@ def labels_to_class_weights(labels, nc=80): def labels_to_image_weights(labels, nc=80, class_weights=np.ones(80)): - # Produces image weights based on class_weights and image contents - class_counts = np.array([np.bincount(x[:, 0].astype(np.int), minlength=nc) for x in labels]) + # Produces image weights based on class mAPs + n = len(labels) + class_counts = np.array([np.bincount(labels[i][:, 0].astype(np.int), minlength=nc) for i in range(n)]) image_weights = (class_weights.reshape(1, nc) * class_counts).sum(1) # index = random.choices(range(n), weights=image_weights, k=1) # weight image sample return image_weights @@ -254,7 +205,7 @@ def coco80_to_coco91_class(): # converts 80-index (val2014) to 91-index (paper) def xyxy2xywh(x): # Convert nx4 boxes from [x1, y1, x2, y2] to [x, y, w, h] where xy1=top-left, xy2=bottom-right - y = x.clone() if isinstance(x, torch.Tensor) else np.copy(x) + y = torch.zeros_like(x) if isinstance(x, torch.Tensor) else np.zeros_like(x) y[:, 0] = (x[:, 0] + x[:, 2]) / 2 # x center y[:, 1] = (x[:, 1] + x[:, 3]) / 2 # y center y[:, 2] = x[:, 2] - x[:, 0] # width @@ -264,7 +215,7 @@ def xyxy2xywh(x): def xywh2xyxy(x): # Convert nx4 boxes from [x, y, w, h] to [x1, y1, x2, y2] where xy1=top-left, xy2=bottom-right - y = x.clone() if isinstance(x, torch.Tensor) else np.copy(x) + y = torch.zeros_like(x) if isinstance(x, torch.Tensor) else np.zeros_like(x) y[:, 0] = x[:, 0] - x[:, 2] / 2 # top left x y[:, 1] = x[:, 1] - x[:, 3] / 2 # top left y y[:, 2] = x[:, 0] + x[:, 2] / 2 # bottom right x @@ -272,50 +223,6 @@ def xywh2xyxy(x): return y -def xywhn2xyxy(x, w=640, h=640, padw=0, padh=0): - # Convert nx4 boxes from [x, y, w, h] normalized to [x1, y1, x2, y2] where xy1=top-left, xy2=bottom-right - y = x.clone() if isinstance(x, torch.Tensor) else np.copy(x) - y[:, 0] = w * (x[:, 0] - x[:, 2] / 2) + padw # top left x - y[:, 1] = h * (x[:, 1] - x[:, 3] / 2) + padh # top left y - y[:, 2] = w * (x[:, 0] + x[:, 2] / 2) + padw # bottom right x - y[:, 3] = h * (x[:, 1] + x[:, 3] / 2) + padh # bottom right y - return y - - -def xyn2xy(x, w=640, h=640, padw=0, padh=0): - # Convert normalized segments into pixel segments, shape (n,2) - y = x.clone() if isinstance(x, torch.Tensor) else np.copy(x) - y[:, 0] = w * x[:, 0] + padw # top left x - y[:, 1] = h * x[:, 1] + padh # top left y - return y - - -def segment2box(segment, width=640, height=640): - # Convert 1 segment label to 1 box label, applying inside-image constraint, i.e. (xy1, xy2, ...) to (xyxy) - x, y = segment.T # segment xy - inside = (x >= 0) & (y >= 0) & (x <= width) & (y <= height) - x, y, = x[inside], y[inside] - return np.array([x.min(), y.min(), x.max(), y.max()]) if any(x) else np.zeros((1, 4)) # xyxy - - -def segments2boxes(segments): - # Convert segment labels to box labels, i.e. (cls, xy1, xy2, ...) to (cls, xywh) - boxes = [] - for s in segments: - x, y = s.T # segment xy - boxes.append([x.min(), y.min(), x.max(), y.max()]) # cls, xyxy - return xyxy2xywh(np.array(boxes)) # cls, xywh - - -def resample_segments(segments, n=1000): - # Up-sample an (n,2) segment - for i, s in enumerate(segments): - x = np.linspace(0, len(s) - 1, n) - xp = np.arange(len(s)) - segments[i] = np.concatenate([np.interp(x, xp, s[:, i]) for i in range(2)]).reshape(2, -1).T # segment xy - return segments - - def scale_coords(img1_shape, coords, img0_shape, ratio_pad=None): # Rescale coords (xyxy) from img1_shape to img0_shape if ratio_pad is None: # calculate from img0_shape @@ -340,56 +247,100 @@ def clip_coords(boxes, img_shape): boxes[:, 3].clamp_(0, img_shape[0]) # y2 -def bbox_iou(box1, box2, x1y1x2y2=True, GIoU=False, DIoU=False, CIoU=False, eps=1e-7): - # Returns the IoU of box1 to box2. box1 is 4, box2 is nx4 - box2 = box2.T +def ap_per_class(tp, conf, pred_cls, target_cls): + """ Compute the average precision, given the recall and precision curves. + Source: https://github.com/rafaelpadilla/Object-Detection-Metrics. + # Arguments + tp: True positives (nparray, nx1 or nx10). + conf: Objectness value from 0-1 (nparray). + pred_cls: Predicted object classes (nparray). + target_cls: True object classes (nparray). + # Returns + The average precision as computed in py-faster-rcnn. + """ - # Get the coordinates of bounding boxes - if x1y1x2y2: # x1, y1, x2, y2 = box1 - b1_x1, b1_y1, b1_x2, b1_y2 = box1[0], box1[1], box1[2], box1[3] - b2_x1, b2_y1, b2_x2, b2_y2 = box2[0], box2[1], box2[2], box2[3] - else: # transform from xywh to xyxy - b1_x1, b1_x2 = box1[0] - box1[2] / 2, box1[0] + box1[2] / 2 - b1_y1, b1_y2 = box1[1] - box1[3] / 2, box1[1] + box1[3] / 2 - b2_x1, b2_x2 = box2[0] - box2[2] / 2, box2[0] + box2[2] / 2 - b2_y1, b2_y2 = box2[1] - box2[3] / 2, box2[1] + box2[3] / 2 + # Sort by objectness + i = np.argsort(-conf) + tp, conf, pred_cls = tp[i], conf[i], pred_cls[i] - # Intersection area - inter = (torch.min(b1_x2, b2_x2) - torch.max(b1_x1, b2_x1)).clamp(0) * \ - (torch.min(b1_y2, b2_y2) - torch.max(b1_y1, b2_y1)).clamp(0) + # Find unique classes + unique_classes = np.unique(target_cls) - # Union Area - w1, h1 = b1_x2 - b1_x1, b1_y2 - b1_y1 + eps - w2, h2 = b2_x2 - b2_x1, b2_y2 - b2_y1 + eps - union = w1 * h1 + w2 * h2 - inter + eps + # Create Precision-Recall curve and compute AP for each class + pr_score = 0.1 # score to evaluate P and R https://github.com/ultralytics/yolov3/issues/898 + s = [unique_classes.shape[0], tp.shape[1]] # number class, number iou thresholds (i.e. 10 for mAP0.5...0.95) + ap, p, r = np.zeros(s), np.zeros(s), np.zeros(s) + for ci, c in enumerate(unique_classes): + i = pred_cls == c + n_gt = (target_cls == c).sum() # Number of ground truth objects + n_p = i.sum() # Number of predicted objects - iou = inter / union + if n_p == 0 or n_gt == 0: + continue + else: + # Accumulate FPs and TPs + fpc = (1 - tp[i]).cumsum(0) + tpc = tp[i].cumsum(0) + + # Recall + recall = tpc / (n_gt + 1e-16) # recall curve + r[ci] = np.interp(-pr_score, -conf[i], recall[:, 0]) # r at pr_score, negative x, xp because xp decreases + + # Precision + precision = tpc / (tpc + fpc) # precision curve + p[ci] = np.interp(-pr_score, -conf[i], precision[:, 0]) # p at pr_score + + # AP from recall-precision curve + for j in range(tp.shape[1]): + ap[ci, j] = compute_ap(recall[:, j], precision[:, j]) + + # Plot + # fig, ax = plt.subplots(1, 1, figsize=(5, 5)) + # ax.plot(recall, precision) + # ax.set_xlabel('Recall') + # ax.set_ylabel('Precision') + # ax.set_xlim(0, 1.01) + # ax.set_ylim(0, 1.01) + # fig.tight_layout() + # fig.savefig('PR_curve.png', dpi=300) + + # Compute F1 score (harmonic mean of precision and recall) + f1 = 2 * p * r / (p + r + 1e-16) + + return p, r, ap, f1, unique_classes.astype('int32') + + +def compute_ap(recall, precision): + """ Compute the average precision, given the recall and precision curves. + Source: https://github.com/rbgirshick/py-faster-rcnn. + # Arguments + recall: The recall curve (list). + precision: The precision curve (list). + # Returns + The average precision as computed in py-faster-rcnn. + """ - if GIoU or DIoU or CIoU: - cw = torch.max(b1_x2, b2_x2) - torch.min(b1_x1, b2_x1) # convex (smallest enclosing box) width - ch = torch.max(b1_y2, b2_y2) - torch.min(b1_y1, b2_y1) # convex height - if CIoU or DIoU: # Distance or Complete IoU https://arxiv.org/abs/1911.08287v1 - c2 = cw ** 2 + ch ** 2 + eps # convex diagonal squared - rho2 = ((b2_x1 + b2_x2 - b1_x1 - b1_x2) ** 2 + - (b2_y1 + b2_y2 - b1_y1 - b1_y2) ** 2) / 4 # center distance squared - if DIoU: - return iou - rho2 / c2 # DIoU - elif CIoU: # https://github.com/Zzh-tju/DIoU-SSD-pytorch/blob/master/utils/box/box_utils.py#L47 - v = (4 / math.pi ** 2) * torch.pow(torch.atan(w2 / (h2 + eps)) - torch.atan(w1 / (h1 + eps)), 2) - with torch.no_grad(): - alpha = v / (v - iou + (1 + eps)) - return iou - (rho2 / c2 + v * alpha) # CIoU - else: # GIoU https://arxiv.org/pdf/1902.09630.pdf - c_area = cw * ch + eps # convex area - return iou - (c_area - union) / c_area # GIoU - else: - return iou # IoU + # Append sentinel values to beginning and end + mrec = np.concatenate(([0.], recall, [min(recall[-1] + 1E-3, 1.)])) + mpre = np.concatenate(([0.], precision, [0.])) + + # Compute the precision envelope + mpre = np.flip(np.maximum.accumulate(np.flip(mpre))) + # Integrate area under curve + method = 'interp' # methods: 'continuous', 'interp' + if method == 'interp': + x = np.linspace(0, 1, 101) # 101-point interp (COCO) + ap = np.trapz(np.interp(x, mrec, mpre), x) # integrate + else: # 'continuous' + i = np.where(mrec[1:] != mrec[:-1])[0] # points where x axis (recall) changes + ap = np.sum((mrec[i + 1] - mrec[i]) * mpre[i + 1]) # area under curve + return ap -def bbox_alpha_iou(box1, box2, x1y1x2y2=False, GIoU=False, DIoU=False, CIoU=False, alpha=2, eps=1e-9): - # Returns tsqrt_he IoU of box1 to box2. box1 is 4, box2 is nx4 +def bbox_iou(box1, box2, x1y1x2y2=True, GIoU=False, DIoU=False, CIoU=False): + # Returns the IoU of box1 to box2. box1 is 4, box2 is nx4 box2 = box2.T # Get the coordinates of bounding boxes @@ -407,37 +358,31 @@ def bbox_alpha_iou(box1, box2, x1y1x2y2=False, GIoU=False, DIoU=False, CIoU=Fals (torch.min(b1_y2, b2_y2) - torch.max(b1_y1, b2_y1)).clamp(0) # Union Area - w1, h1 = b1_x2 - b1_x1, b1_y2 - b1_y1 + eps - w2, h2 = b2_x2 - b2_x1, b2_y2 - b2_y1 + eps - union = w1 * h1 + w2 * h2 - inter + eps - - # change iou into pow(iou+eps) - # iou = inter / union - iou = torch.pow(inter/union + eps, alpha) - # beta = 2 * alpha + w1, h1 = b1_x2 - b1_x1, b1_y2 - b1_y1 + w2, h2 = b2_x2 - b2_x1, b2_y2 - b2_y1 + union = (w1 * h1 + 1e-16) + w2 * h2 - inter + + iou = inter / union # iou if GIoU or DIoU or CIoU: cw = torch.max(b1_x2, b2_x2) - torch.min(b1_x1, b2_x1) # convex (smallest enclosing box) width ch = torch.max(b1_y2, b2_y2) - torch.min(b1_y1, b2_y1) # convex height - if CIoU or DIoU: # Distance or Complete IoU https://arxiv.org/abs/1911.08287v1 - c2 = (cw ** 2 + ch ** 2) ** alpha + eps # convex diagonal - rho_x = torch.abs(b2_x1 + b2_x2 - b1_x1 - b1_x2) - rho_y = torch.abs(b2_y1 + b2_y2 - b1_y1 - b1_y2) - rho2 = ((rho_x ** 2 + rho_y ** 2) / 4) ** alpha # center distance + if GIoU: # Generalized IoU https://arxiv.org/pdf/1902.09630.pdf + c_area = cw * ch + 1e-16 # convex area + return iou - (c_area - union) / c_area # GIoU + if DIoU or CIoU: # Distance or Complete IoU https://arxiv.org/abs/1911.08287v1 + # convex diagonal squared + c2 = cw ** 2 + ch ** 2 + 1e-16 + # centerpoint distance squared + rho2 = ((b2_x1 + b2_x2) - (b1_x1 + b1_x2)) ** 2 / 4 + ((b2_y1 + b2_y2) - (b1_y1 + b1_y2)) ** 2 / 4 if DIoU: return iou - rho2 / c2 # DIoU elif CIoU: # https://github.com/Zzh-tju/DIoU-SSD-pytorch/blob/master/utils/box/box_utils.py#L47 v = (4 / math.pi ** 2) * torch.pow(torch.atan(w2 / h2) - torch.atan(w1 / h1), 2) with torch.no_grad(): - alpha_ciou = v / ((1 + eps) - inter / union + v) - # return iou - (rho2 / c2 + v * alpha_ciou) # CIoU - return iou - (rho2 / c2 + torch.pow(v * alpha_ciou + eps, alpha)) # CIoU - else: # GIoU https://arxiv.org/pdf/1902.09630.pdf - # c_area = cw * ch + eps # convex area - # return iou - (c_area - union) / c_area # GIoU - c_area = torch.max(cw * ch + eps, union) # convex area - return iou - torch.pow((c_area - union) / c_area + eps, alpha) # GIoU - else: - return iou # torch.log(iou+eps) or iou + alpha = v / (1 - iou + v + 1e-16) + return iou - (rho2 / c2 + v * alpha) # CIoU + + return iou def box_iou(box1, box2): @@ -473,173 +418,204 @@ def wh_iou(wh1, wh2): return inter / (wh1.prod(2) + wh2.prod(2) - inter) # iou = inter / (area1 + area2 - inter) -def box_giou(box1, box2): - """ - Return generalized intersection-over-union (Jaccard index) between two sets of boxes. - Both sets of boxes are expected to be in ``(x1, y1, x2, y2)`` format with - ``0 <= x1 < x2`` and ``0 <= y1 < y2``. - Args: - boxes1 (Tensor[N, 4]): first set of boxes - boxes2 (Tensor[M, 4]): second set of boxes - Returns: - Tensor[N, M]: the NxM matrix containing the pairwise generalized IoU values - for every element in boxes1 and boxes2 - """ - - def box_area(box): - # box = 4xn - return (box[2] - box[0]) * (box[3] - box[1]) - - area1 = box_area(box1.T) - area2 = box_area(box2.T) - - inter = (torch.min(box1[:, None, 2:], box2[:, 2:]) - torch.max(box1[:, None, :2], box2[:, :2])).clamp(0).prod(2) - union = (area1[:, None] + area2 - inter) - - iou = inter / union - - lti = torch.min(box1[:, None, :2], box2[:, :2]) - rbi = torch.max(box1[:, None, 2:], box2[:, 2:]) - - whi = (rbi - lti).clamp(min=0) # [N,M,2] - areai = whi[:, :, 0] * whi[:, :, 1] - - return iou - (areai - union) / areai - - -def box_ciou(box1, box2, eps: float = 1e-7): - """ - Return complete intersection-over-union (Jaccard index) between two sets of boxes. - Both sets of boxes are expected to be in ``(x1, y1, x2, y2)`` format with - ``0 <= x1 < x2`` and ``0 <= y1 < y2``. - Args: - boxes1 (Tensor[N, 4]): first set of boxes - boxes2 (Tensor[M, 4]): second set of boxes - eps (float, optional): small number to prevent division by zero. Default: 1e-7 - Returns: - Tensor[N, M]: the NxM matrix containing the pairwise complete IoU values - for every element in boxes1 and boxes2 - """ - - def box_area(box): - # box = 4xn - return (box[2] - box[0]) * (box[3] - box[1]) - - area1 = box_area(box1.T) - area2 = box_area(box2.T) - - inter = (torch.min(box1[:, None, 2:], box2[:, 2:]) - torch.max(box1[:, None, :2], box2[:, :2])).clamp(0).prod(2) - union = (area1[:, None] + area2 - inter) - - iou = inter / union - - lti = torch.min(box1[:, None, :2], box2[:, :2]) - rbi = torch.max(box1[:, None, 2:], box2[:, 2:]) - - whi = (rbi - lti).clamp(min=0) # [N,M,2] - diagonal_distance_squared = (whi[:, :, 0] ** 2) + (whi[:, :, 1] ** 2) + eps - - # centers of boxes - x_p = (box1[:, None, 0] + box1[:, None, 2]) / 2 - y_p = (box1[:, None, 1] + box1[:, None, 3]) / 2 - x_g = (box2[:, 0] + box2[:, 2]) / 2 - y_g = (box2[:, 1] + box2[:, 3]) / 2 - # The distance between boxes' centers squared. - centers_distance_squared = (x_p - x_g) ** 2 + (y_p - y_g) ** 2 - - w_pred = box1[:, None, 2] - box1[:, None, 0] - h_pred = box1[:, None, 3] - box1[:, None, 1] - - w_gt = box2[:, 2] - box2[:, 0] - h_gt = box2[:, 3] - box2[:, 1] - - v = (4 / (torch.pi ** 2)) * torch.pow((torch.atan(w_gt / h_gt) - torch.atan(w_pred / h_pred)), 2) - with torch.no_grad(): - alpha = v / (1 - iou + v + eps) - return iou - (centers_distance_squared / diagonal_distance_squared) - alpha * v - - -def box_diou(box1, box2, eps: float = 1e-7): - """ - Return distance intersection-over-union (Jaccard index) between two sets of boxes. - Both sets of boxes are expected to be in ``(x1, y1, x2, y2)`` format with - ``0 <= x1 < x2`` and ``0 <= y1 < y2``. - Args: - boxes1 (Tensor[N, 4]): first set of boxes - boxes2 (Tensor[M, 4]): second set of boxes - eps (float, optional): small number to prevent division by zero. Default: 1e-7 - Returns: - Tensor[N, M]: the NxM matrix containing the pairwise distance IoU values - for every element in boxes1 and boxes2 - """ - - def box_area(box): - # box = 4xn - return (box[2] - box[0]) * (box[3] - box[1]) - - area1 = box_area(box1.T) - area2 = box_area(box2.T) - - inter = (torch.min(box1[:, None, 2:], box2[:, 2:]) - torch.max(box1[:, None, :2], box2[:, :2])).clamp(0).prod(2) - union = (area1[:, None] + area2 - inter) - - iou = inter / union - - lti = torch.min(box1[:, None, :2], box2[:, :2]) - rbi = torch.max(box1[:, None, 2:], box2[:, 2:]) +class FocalLoss(nn.Module): + # Wraps focal loss around existing loss_fcn(), i.e. criteria = FocalLoss(nn.BCEWithLogitsLoss(), gamma=1.5) + def __init__(self, loss_fcn, gamma=1.5, alpha=0.25): + super(FocalLoss, self).__init__() + self.loss_fcn = loss_fcn # must be nn.BCEWithLogitsLoss() + self.gamma = gamma + self.alpha = alpha + self.reduction = loss_fcn.reduction + self.loss_fcn.reduction = 'none' # required to apply FL to each element + + def forward(self, pred, true): + loss = self.loss_fcn(pred, true) + # p_t = torch.exp(-loss) + # loss *= self.alpha * (1.000001 - p_t) ** self.gamma # non-zero power for gradient stability + + # TF implementation https://github.com/tensorflow/addons/blob/v0.7.1/tensorflow_addons/losses/focal_loss.py + pred_prob = torch.sigmoid(pred) # prob from logits + p_t = true * pred_prob + (1 - true) * (1 - pred_prob) + alpha_factor = true * self.alpha + (1 - true) * (1 - self.alpha) + modulating_factor = (1.0 - p_t) ** self.gamma + loss *= alpha_factor * modulating_factor + + if self.reduction == 'mean': + return loss.mean() + elif self.reduction == 'sum': + return loss.sum() + else: # 'none' + return loss + + +def smooth_BCE(eps=0.1): # https://github.com/ultralytics/yolov3/issues/238#issuecomment-598028441 + # return positive, negative label smoothing BCE targets + return 1.0 - 0.5 * eps, 0.5 * eps + + +class BCEBlurWithLogitsLoss(nn.Module): + # BCEwithLogitLoss() with reduced missing label effects. + def __init__(self, alpha=0.05): + super(BCEBlurWithLogitsLoss, self).__init__() + self.loss_fcn = nn.BCEWithLogitsLoss(reduction='none') # must be nn.BCEWithLogitsLoss() + self.alpha = alpha + + def forward(self, pred, true): + loss = self.loss_fcn(pred, true) + pred = torch.sigmoid(pred) # prob from logits + dx = pred - true # reduce only missing label effects + # dx = (pred - true).abs() # reduce missing label and false label effects + alpha_factor = 1 - torch.exp((dx - 1) / (self.alpha + 1e-4)) + loss *= alpha_factor + return loss.mean() + + +def compute_loss(p, targets, model): # predictions, targets, model + device = targets.device + lcls, lbox, lobj = torch.zeros(1, device=device), torch.zeros(1, device=device), torch.zeros(1, device=device) + tcls, tbox, indices, anchors = build_targets(p, targets, model) # targets + h = model.hyp # hyperparameters + + # Define criteria + BCEcls = nn.BCEWithLogitsLoss(pos_weight=torch.Tensor([h['cls_pw']])).to(device) + BCEobj = nn.BCEWithLogitsLoss(pos_weight=torch.Tensor([h['obj_pw']])).to(device) + + # Class label smoothing https://arxiv.org/pdf/1902.04103.pdf eqn 3 + cp, cn = smooth_BCE(eps=0.0) + + # Focal loss + g = h['fl_gamma'] # focal loss gamma + if g > 0: + BCEcls, BCEobj = FocalLoss(BCEcls, g), FocalLoss(BCEobj, g) + + # Losses + nt = 0 # number of targets + np = len(p) # number of outputs + balance = [4.0, 1.0, 0.4] if np == 3 else [4.0, 1.0, 0.4, 0.1] # P3-5 or P3-6 + for i, pi in enumerate(p): # layer index, layer predictions + b, a, gj, gi = indices[i] # image, anchor, gridy, gridx + tobj = torch.zeros_like(pi[..., 0], device=device) # target obj + + n = b.shape[0] # number of targets + if n: + nt += n # cumulative targets + ps = pi[b, a, gj, gi] # prediction subset corresponding to targets + + # Regression + pxy = ps[:, :2].sigmoid() * 2. - 0.5 + pwh = (ps[:, 2:4].sigmoid() * 2) ** 2 * anchors[i] + pbox = torch.cat((pxy, pwh), 1).to(device) # predicted box + giou = bbox_iou(pbox.T, tbox[i], x1y1x2y2=False, CIoU=True) # giou(prediction, target) + lbox += (1.0 - giou).mean() # giou loss + + # Objectness + tobj[b, a, gj, gi] = (1.0 - model.gr) + model.gr * giou.detach().clamp(0).type(tobj.dtype) # giou ratio + + # Classification + if model.nc > 1: # cls loss (only if multiple classes) + t = torch.full_like(ps[:, 5:], cn, device=device) # targets + t[range(n), tcls[i]] = cp + lcls += BCEcls(ps[:, 5:], t) # BCE + + # Append targets to text file + # with open('targets.txt', 'a') as file: + # [file.write('%11.5g ' * 4 % tuple(x) + '\n') for x in torch.cat((txy[i], twh[i]), 1)] + + lobj += BCEobj(pi[..., 4], tobj) * balance[i] # obj loss + + s = 3 / np # output count scaling + lbox *= h['giou'] * s + lobj *= h['obj'] * s * (1.4 if np == 4 else 1.) + lcls *= h['cls'] * s + bs = tobj.shape[0] # batch size + + loss = lbox + lobj + lcls + return loss * bs, torch.cat((lbox, lobj, lcls, loss)).detach() + + +def build_targets(p, targets, model): + # Build targets for compute_loss(), input targets(image,class,x,y,w,h) + det = model.module.model[-1] if is_parallel(model) else model.model[-1] # Detect() module + na, nt = det.na, targets.shape[0] # number of anchors, targets + tcls, tbox, indices, anch = [], [], [], [] + gain = torch.ones(7, device=targets.device) # normalized to gridspace gain + ai = torch.arange(na, device=targets.device).float().view(na, 1).repeat(1, nt) # same as .repeat_interleave(nt) + targets = torch.cat((targets.repeat(na, 1, 1), ai[:, :, None]), 2) # append anchor indices + + g = 0.5 # bias + off = torch.tensor([[0, 0], + [1, 0], [0, 1], [-1, 0], [0, -1], # j,k,l,m + # [1, 1], [1, -1], [-1, 1], [-1, -1], # jk,jm,lk,lm + ], device=targets.device).float() * g # offsets + + for i in range(det.nl): + anchors = det.anchors[i] + gain[2:6] = torch.tensor(p[i].shape)[[3, 2, 3, 2]] # xyxy gain + + # Match targets to anchors + t = targets * gain + if nt: + # Matches + r = t[:, :, 4:6] / anchors[:, None] # wh ratio + j = torch.max(r, 1. / r).max(2)[0] < model.hyp['anchor_t'] # compare + # j = wh_iou(anchors, t[:, 4:6]) > model.hyp['iou_t'] # iou(3,n)=wh_iou(anchors(3,2), gwh(n,2)) + t = t[j] # filter + + # Offsets + gxy = t[:, 2:4] # grid xy + gxi = gain[[2, 3]] - gxy # inverse + j, k = ((gxy % 1. < g) & (gxy > 1.)).T + l, m = ((gxi % 1. < g) & (gxi > 1.)).T + j = torch.stack((torch.ones_like(j), j, k, l, m)) + t = t.repeat((5, 1, 1))[j] + offsets = (torch.zeros_like(gxy)[None] + off[:, None])[j] + else: + t = targets[0] + offsets = 0 - whi = (rbi - lti).clamp(min=0) # [N,M,2] - diagonal_distance_squared = (whi[:, :, 0] ** 2) + (whi[:, :, 1] ** 2) + eps + # Define + b, c = t[:, :2].long().T # image, class + gxy = t[:, 2:4] # grid xy + gwh = t[:, 4:6] # grid wh + gij = (gxy - offsets).long() + gi, gj = gij.T # grid xy indices - # centers of boxes - x_p = (box1[:, None, 0] + box1[:, None, 2]) / 2 - y_p = (box1[:, None, 1] + box1[:, None, 3]) / 2 - x_g = (box2[:, 0] + box2[:, 2]) / 2 - y_g = (box2[:, 1] + box2[:, 3]) / 2 - # The distance between boxes' centers squared. - centers_distance_squared = (x_p - x_g) ** 2 + (y_p - y_g) ** 2 + # Append + a = t[:, 6].long() # anchor indices + indices.append((b, a, gj, gi)) # image, anchor, grid indices + tbox.append(torch.cat((gxy - gij, gwh), 1)) # box + anch.append(anchors[a]) # anchors + tcls.append(c) # class - # The distance IoU is the IoU penalized by a normalized - # distance between boxes' centers squared. - return iou - (centers_distance_squared / diagonal_distance_squared) + return tcls, tbox, indices, anch -def non_max_suppression(prediction, conf_thres=0.25, iou_thres=0.45, classes=None, agnostic=False, multi_label=False, - labels=()): - """Runs Non-Maximum Suppression (NMS) on inference results +def non_max_suppression(prediction, conf_thres=0.1, iou_thres=0.6, merge=False, classes=None, agnostic=False): + """Performs Non-Maximum Suppression (NMS) on inference results Returns: - list of detections, on (n,6) tensor per image [xyxy, conf, cls] + detections with shape: nx6 (x1, y1, x2, y2, conf, cls) """ + if prediction.dtype is torch.float16: + prediction = prediction.float() # to FP32 - nc = prediction.shape[2] - 5 # number of classes + nc = prediction[0].shape[1] - 5 # number of classes xc = prediction[..., 4] > conf_thres # candidates # Settings min_wh, max_wh = 2, 4096 # (pixels) minimum and maximum box width and height max_det = 300 # maximum number of detections per image - max_nms = 30000 # maximum number of boxes into torchvision.ops.nms() time_limit = 10.0 # seconds to quit after redundant = True # require redundant detections - multi_label &= nc > 1 # multiple labels per box (adds 0.5ms/img) - merge = False # use merge-NMS + multi_label = nc > 1 # multiple labels per box (adds 0.5ms/img) t = time.time() - output = [torch.zeros((0, 6), device=prediction.device)] * prediction.shape[0] + output = [None] * prediction.shape[0] for xi, x in enumerate(prediction): # image index, image inference # Apply constraints # x[((x[..., 2:4] < min_wh) | (x[..., 2:4] > max_wh)).any(1), 4] = 0 # width-height x = x[xc[xi]] # confidence - # Cat apriori labels if autolabelling - if labels and len(labels[xi]): - l = labels[xi] - v = torch.zeros((len(l), nc + 5), device=x.device) - v[:, :4] = l[:, 1:5] # box - v[:, 4] = 1.0 # conf - v[range(len(l)), l[:, 0].long() + 5] = 1.0 # cls - x = torch.cat((x, v), 0) - # If none remain process next image if not x.shape[0]: continue @@ -659,153 +635,221 @@ def non_max_suppression(prediction, conf_thres=0.25, iou_thres=0.45, classes=Non x = torch.cat((box, conf, j.float()), 1)[conf.view(-1) > conf_thres] # Filter by class - if classes is not None: + if classes: x = x[(x[:, 5:6] == torch.tensor(classes, device=x.device)).any(1)] # Apply finite constraint # if not torch.isfinite(x).all(): # x = x[torch.isfinite(x).all(1)] - # Check shape - n = x.shape[0] # number of boxes - if not n: # no boxes - continue - elif n > max_nms: # excess boxes - x = x[x[:, 4].argsort(descending=True)[:max_nms]] # sort by confidence - - # Batched NMS - c = x[:, 5:6] * (0 if agnostic else max_wh) # classes - boxes, scores = x[:, :4] + c, x[:, 4] # boxes (offset by class), scores - i = torchvision.ops.nms(boxes, scores, iou_thres) # NMS - if i.shape[0] > max_det: # limit detections - i = i[:max_det] - if merge and (1 < n < 3E3): # Merge NMS (boxes merged using weighted mean) - # update boxes as boxes(i,4) = weights(i,n) * boxes(n,4) - iou = box_iou(boxes[i], boxes) > iou_thres # iou matrix - weights = iou * scores[None] # box weights - x[i, :4] = torch.mm(weights, x[:, :4]).float() / weights.sum(1, keepdim=True) # merged boxes - if redundant: - i = i[iou.sum(1) > 1] # require redundancy - - output[xi] = x[i] - if (time.time() - t) > time_limit: - print(f'WARNING: NMS time limit {time_limit}s exceeded') - break # time limit exceeded - - return output - - -def non_max_suppression_kpt(prediction, conf_thres=0.25, iou_thres=0.45, classes=None, agnostic=False, multi_label=False, - labels=(), kpt_label=False, nc=None, nkpt=None): - """Runs Non-Maximum Suppression (NMS) on inference results - - Returns: - list of detections, on (n,6) tensor per image [xyxy, conf, cls] - """ - if nc is None: - nc = prediction.shape[2] - 5 if not kpt_label else prediction.shape[2] - 56 # number of classes - xc = prediction[..., 4] > conf_thres # candidates - - # Settings - min_wh, max_wh = 2, 4096 # (pixels) minimum and maximum box width and height - max_det = 300 # maximum number of detections per image - max_nms = 30000 # maximum number of boxes into torchvision.ops.nms() - time_limit = 10.0 # seconds to quit after - redundant = True # require redundant detections - multi_label &= nc > 1 # multiple labels per box (adds 0.5ms/img) - merge = False # use merge-NMS - - t = time.time() - output = [torch.zeros((0,6), device=prediction.device)] * prediction.shape[0] - for xi, x in enumerate(prediction): # image index, image inference - # Apply constraints - # x[((x[..., 2:4] < min_wh) | (x[..., 2:4] > max_wh)).any(1), 4] = 0 # width-height - x = x[xc[xi]] # confidence - - # Cat apriori labels if autolabelling - if labels and len(labels[xi]): - l = labels[xi] - v = torch.zeros((len(l), nc + 5), device=x.device) - v[:, :4] = l[:, 1:5] # box - v[:, 4] = 1.0 # conf - v[range(len(l)), l[:, 0].long() + 5] = 1.0 # cls - x = torch.cat((x, v), 0) - # If none remain process next image - if not x.shape[0]: - continue - - # Compute conf - x[:, 5:5+nc] *= x[:, 4:5] # conf = obj_conf * cls_conf - - # Box (center x, center y, width, height) to (x1, y1, x2, y2) - box = xywh2xyxy(x[:, :4]) - - # Detections matrix nx6 (xyxy, conf, cls) - if multi_label: - i, j = (x[:, 5:] > conf_thres).nonzero(as_tuple=False).T - x = torch.cat((box[i], x[i, j + 5, None], j[:, None].float()), 1) - else: # best class only - if not kpt_label: - conf, j = x[:, 5:].max(1, keepdim=True) - x = torch.cat((box, conf, j.float()), 1)[conf.view(-1) > conf_thres] - else: - kpts = x[:, 6:] - conf, j = x[:, 5:6].max(1, keepdim=True) - x = torch.cat((box, conf, j.float(), kpts), 1)[conf.view(-1) > conf_thres] - - - # Filter by class - if classes is not None: - x = x[(x[:, 5:6] == torch.tensor(classes, device=x.device)).any(1)] - - # Apply finite constraint - # if not torch.isfinite(x).all(): - # x = x[torch.isfinite(x).all(1)] - - # Check shape n = x.shape[0] # number of boxes - if not n: # no boxes + if not n: continue - elif n > max_nms: # excess boxes - x = x[x[:, 4].argsort(descending=True)[:max_nms]] # sort by confidence + + # Sort by confidence + # x = x[x[:, 4].argsort(descending=True)] # Batched NMS c = x[:, 5:6] * (0 if agnostic else max_wh) # classes boxes, scores = x[:, :4] + c, x[:, 4] # boxes (offset by class), scores - i = torchvision.ops.nms(boxes, scores, iou_thres) # NMS + i = torchvision.ops.boxes.nms(boxes, scores, iou_thres) if i.shape[0] > max_det: # limit detections i = i[:max_det] if merge and (1 < n < 3E3): # Merge NMS (boxes merged using weighted mean) - # update boxes as boxes(i,4) = weights(i,n) * boxes(n,4) - iou = box_iou(boxes[i], boxes) > iou_thres # iou matrix - weights = iou * scores[None] # box weights - x[i, :4] = torch.mm(weights, x[:, :4]).float() / weights.sum(1, keepdim=True) # merged boxes - if redundant: - i = i[iou.sum(1) > 1] # require redundancy + try: # update boxes as boxes(i,4) = weights(i,n) * boxes(n,4) + iou = box_iou(boxes[i], boxes) > iou_thres # iou matrix + weights = iou * scores[None] # box weights + x[i, :4] = torch.mm(weights, x[:, :4]).float() / weights.sum(1, keepdim=True) # merged boxes + if redundant: + i = i[iou.sum(1) > 1] # require redundancy + except: # possible CUDA error https://github.com/ultralytics/yolov3/issues/1139 + print(x, i, x.shape, i.shape) + pass output[xi] = x[i] if (time.time() - t) > time_limit: - print(f'WARNING: NMS time limit {time_limit}s exceeded') break # time limit exceeded return output -def strip_optimizer(f='best.pt', s=''): # from utils.general import *; strip_optimizer() +def strip_optimizer(f='weights/best.pt', s=''): # from utils.general import *; strip_optimizer() # Strip optimizer from 'f' to finalize training, optionally save as 's' x = torch.load(f, map_location=torch.device('cpu')) - if x.get('ema'): - x['model'] = x['ema'] # replace model with ema - for k in 'optimizer', 'training_results', 'wandb_id', 'ema', 'updates': # keys - x[k] = None + x['optimizer'] = None + x['training_results'] = None x['epoch'] = -1 x['model'].half() # to FP16 for p in x['model'].parameters(): p.requires_grad = False torch.save(x, s or f) mb = os.path.getsize(s or f) / 1E6 # filesize - print(f"Optimizer stripped from {f},{(' saved as %s,' % s) if s else ''} {mb:.1f}MB") + print('Optimizer stripped from %s,%s %.1fMB' % (f, (' saved as %s,' % s) if s else '', mb)) + + +def coco_class_count(path='../coco/labels/train2014/'): + # Histogram of occurrences per class + nc = 80 # number classes + x = np.zeros(nc, dtype='int32') + files = sorted(glob.glob('%s/*.*' % path)) + for i, file in enumerate(files): + labels = np.loadtxt(file, dtype=np.float32).reshape(-1, 5) + x += np.bincount(labels[:, 0].astype('int32'), minlength=nc) + print(i, len(files)) + + +def coco_only_people(path='../coco/labels/train2017/'): # from utils.general import *; coco_only_people() + # Find images with only people + files = sorted(glob.glob('%s/*.*' % path)) + for i, file in enumerate(files): + labels = np.loadtxt(file, dtype=np.float32).reshape(-1, 5) + if all(labels[:, 0] == 0): + print(labels.shape[0], file) + + +def crop_images_random(path='../images/', scale=0.50): # from utils.general import *; crop_images_random() + # crops images into random squares up to scale fraction + # WARNING: overwrites images! + for file in tqdm(sorted(glob.glob('%s/*.*' % path))): + img = cv2.imread(file) # BGR + if img is not None: + h, w = img.shape[:2] + + # create random mask + a = 30 # minimum size (pixels) + mask_h = random.randint(a, int(max(a, h * scale))) # mask height + mask_w = mask_h # mask width + + # box + xmin = max(0, random.randint(0, w) - mask_w // 2) + ymin = max(0, random.randint(0, h) - mask_h // 2) + xmax = min(w, xmin + mask_w) + ymax = min(h, ymin + mask_h) + + # apply random color mask + cv2.imwrite(file, img[ymin:ymax, xmin:xmax]) + + +def coco_single_class_labels(path='../coco/labels/train2014/', label_class=43): + # Makes single-class coco datasets. from utils.general import *; coco_single_class_labels() + if os.path.exists('new/'): + shutil.rmtree('new/') # delete output folder + os.makedirs('new/') # make new output folder + os.makedirs('new/labels/') + os.makedirs('new/images/') + for file in tqdm(sorted(glob.glob('%s/*.*' % path))): + with open(file, 'r') as f: + labels = np.array([x.split() for x in f.read().splitlines()], dtype=np.float32) + i = labels[:, 0] == label_class + if any(i): + img_file = file.replace('labels', 'images').replace('txt', 'jpg') + labels[:, 0] = 0 # reset class to 0 + with open('new/images.txt', 'a') as f: # add image to dataset list + f.write(img_file + '\n') + with open('new/labels/' + Path(file).name, 'a') as f: # write label + for l in labels[i]: + f.write('%g %.6f %.6f %.6f %.6f\n' % tuple(l)) + shutil.copyfile(src=img_file, dst='new/images/' + Path(file).name.replace('txt', 'jpg')) # copy images + + +def kmean_anchors(path='./data/coco128.yaml', n=9, img_size=640, thr=4.0, gen=1000, verbose=True): + """ Creates kmeans-evolved anchors from training dataset + + Arguments: + path: path to dataset *.yaml, or a loaded dataset + n: number of anchors + img_size: image size used for training + thr: anchor-label wh ratio threshold hyperparameter hyp['anchor_t'] used for training, default=4.0 + gen: generations to evolve anchors using genetic algorithm + + Return: + k: kmeans evolved anchors + + Usage: + from utils.general import *; _ = kmean_anchors() + """ + thr = 1. / thr + + def metric(k, wh): # compute metrics + r = wh[:, None] / k[None] + x = torch.min(r, 1. / r).min(2)[0] # ratio metric + # x = wh_iou(wh, torch.tensor(k)) # iou metric + return x, x.max(1)[0] # x, best_x + + def fitness(k): # mutation fitness + _, best = metric(torch.tensor(k, dtype=torch.float32), wh) + return (best * (best > thr).float()).mean() # fitness + + def print_results(k): + k = k[np.argsort(k.prod(1))] # sort small to large + x, best = metric(k, wh0) + bpr, aat = (best > thr).float().mean(), (x > thr).float().mean() * n # best possible recall, anch > thr + print('thr=%.2f: %.4f best possible recall, %.2f anchors past thr' % (thr, bpr, aat)) + print('n=%g, img_size=%s, metric_all=%.3f/%.3f-mean/best, past_thr=%.3f-mean: ' % + (n, img_size, x.mean(), best.mean(), x[x > thr].mean()), end='') + for i, x in enumerate(k): + print('%i,%i' % (round(x[0]), round(x[1])), end=', ' if i < len(k) - 1 else '\n') # use in *.cfg + return k + + if isinstance(path, str): # *.yaml file + with open(path) as f: + data_dict = yaml.load(f, Loader=yaml.FullLoader) # model dict + from utils.datasets import LoadImagesAndLabels + dataset = LoadImagesAndLabels(data_dict['train'], augment=True, rect=True) + else: + dataset = path # dataset + + # Get label wh + shapes = img_size * dataset.shapes / dataset.shapes.max(1, keepdims=True) + wh0 = np.concatenate([l[:, 3:5] * s for s, l in zip(shapes, dataset.labels)]) # wh + + # Filter + i = (wh0 < 3.0).any(1).sum() + if i: + print('WARNING: Extremely small objects found. ' + '%g of %g labels are < 3 pixels in width or height.' % (i, len(wh0))) + wh = wh0[(wh0 >= 2.0).any(1)] # filter > 2 pixels + + # Kmeans calculation + print('Running kmeans for %g anchors on %g points...' % (n, len(wh))) + s = wh.std(0) # sigmas for whitening + k, dist = kmeans(wh / s, n, iter=30) # points, mean distance + k *= s + wh = torch.tensor(wh, dtype=torch.float32) # filtered + wh0 = torch.tensor(wh0, dtype=torch.float32) # unflitered + k = print_results(k) + + # Plot + # k, d = [None] * 20, [None] * 20 + # for i in tqdm(range(1, 21)): + # k[i-1], d[i-1] = kmeans(wh / s, i) # points, mean distance + # fig, ax = plt.subplots(1, 2, figsize=(14, 7)) + # ax = ax.ravel() + # ax[0].plot(np.arange(1, 21), np.array(d) ** 2, marker='.') + # fig, ax = plt.subplots(1, 2, figsize=(14, 7)) # plot wh + # ax[0].hist(wh[wh[:, 0]<100, 0],400) + # ax[1].hist(wh[wh[:, 1]<100, 1],400) + # fig.tight_layout() + # fig.savefig('wh.png', dpi=200) + + # Evolve + npr = np.random + f, sh, mp, s = fitness(k), k.shape, 0.9, 0.1 # fitness, generations, mutation prob, sigma + pbar = tqdm(range(gen), desc='Evolving anchors with Genetic Algorithm') # progress bar + for _ in pbar: + v = np.ones(sh) + while (v == 1).all(): # mutate until a change occurs (prevent duplicates) + v = ((npr.random(sh) < mp) * npr.random() * npr.randn(*sh) * s + 1).clip(0.3, 3.0) + kg = (k.copy() * v).clip(min=2.0) + fg = fitness(kg) + if fg > f: + f, k = fg, kg.copy() + pbar.desc = 'Evolving anchors with Genetic Algorithm: fitness = %.4f' % f + if verbose: + print_results(k) + + return print_results(k) def print_mutation(hyp, results, yaml_file='hyp_evolved.yaml', bucket=''): @@ -816,9 +860,7 @@ def print_mutation(hyp, results, yaml_file='hyp_evolved.yaml', bucket=''): print('\n%s\n%s\nEvolved fitness: %s\n' % (a, b, c)) if bucket: - url = 'gs://%s/evolve.txt' % bucket - if gsutil_getsize(url) > (os.path.getsize('evolve.txt') if os.path.exists('evolve.txt') else 0): - os.system('gsutil cp %s .' % url) # download evolve.txt if larger than local + os.system('gsutil cp gs://%s/evolve.txt .' % bucket) # download evolve.txt with open('evolve.txt', 'a') as f: # append result f.write(c + b + '\n') @@ -826,6 +868,9 @@ def print_mutation(hyp, results, yaml_file='hyp_evolved.yaml', bucket=''): x = x[np.argsort(-fitness(x))] # sort np.savetxt('evolve.txt', x, '%10.3g') # save sort by fitness + if bucket: + os.system('gsutil cp evolve.txt gs://%s' % bucket) # upload evolve.txt + # Save yaml for i, k in enumerate(hyp.keys()): hyp[k] = float(x[0, i + 7]) @@ -835,9 +880,6 @@ def print_mutation(hyp, results, yaml_file='hyp_evolved.yaml', bucket=''): f.write('# Hyperparameter Evolution Results\n# Generations: %g\n# Metrics: ' % len(x) + c + '\n\n') yaml.dump(hyp, f, sort_keys=False) - if bucket: - os.system('gsutil cp evolve.txt %s gs://%s' % (yaml_file, bucket)) # upload - def apply_classifier(x, model, img, im0): # applies a second stage classifier to yolo outputs @@ -874,14 +916,362 @@ def apply_classifier(x, model, img, im0): return x -def increment_path(path, exist_ok=True, sep=''): - # Increment path, i.e. runs/exp --> runs/exp{sep}0, runs/exp{sep}1 etc. - path = Path(path) # os-agnostic - if (path.exists() and exist_ok) or (not path.exists()): - return str(path) +def fitness(x): + # Returns fitness (for use with results.txt or evolve.txt) + w = [0.0, 0.0, 0.1, 0.9] # weights for [P, R, mAP@0.5, mAP@0.5:0.95] + return (x[:, :4] * w).sum(1) + + +def output_to_target(output, width, height): + # Convert model output to target format [batch_id, class_id, x, y, w, h, conf] + if isinstance(output, torch.Tensor): + output = output.cpu().numpy() + + targets = [] + for i, o in enumerate(output): + if o is not None: + for pred in o: + box = pred[:4] + w = (box[2] - box[0]) / width + h = (box[3] - box[1]) / height + x = box[0] / width + w / 2 + y = box[1] / height + h / 2 + conf = pred[4] + cls = int(pred[5]) + + targets.append([i, cls, x, y, w, h, conf]) + + return np.array(targets) + + +def increment_dir(dir, comment=''): + # Increments a directory runs/exp1 --> runs/exp2_comment + n = 0 # number + dir = str(Path(dir)) # os-agnostic + d = sorted(glob.glob(dir + '*')) # directories + if len(d): + n = max([int(x[len(dir):x.find('_') if '_' in x else None]) for x in d]) + 1 # increment + return dir + str(n) + ('_' + comment if comment else '') + + +# Plotting functions --------------------------------------------------------------------------------------------------- +def hist2d(x, y, n=100): + # 2d histogram used in labels.png and evolve.png + xedges, yedges = np.linspace(x.min(), x.max(), n), np.linspace(y.min(), y.max(), n) + hist, xedges, yedges = np.histogram2d(x, y, (xedges, yedges)) + xidx = np.clip(np.digitize(x, xedges) - 1, 0, hist.shape[0] - 1) + yidx = np.clip(np.digitize(y, yedges) - 1, 0, hist.shape[1] - 1) + return np.log(hist[xidx, yidx]) + + +def butter_lowpass_filtfilt(data, cutoff=1500, fs=50000, order=5): + # https://stackoverflow.com/questions/28536191/how-to-filter-smooth-with-scipy-numpy + def butter_lowpass(cutoff, fs, order): + nyq = 0.5 * fs + normal_cutoff = cutoff / nyq + b, a = butter(order, normal_cutoff, btype='low', analog=False) + return b, a + + b, a = butter_lowpass(cutoff, fs, order=order) + return filtfilt(b, a, data) # forward-backward filter + + +def plot_one_box(x, img, color=None, label=None, line_thickness=None): + # Plots one bounding box on image img + tl = line_thickness or round(0.002 * (img.shape[0] + img.shape[1]) / 2) + 1 # line/font thickness + color = color or [random.randint(0, 255) for _ in range(3)] + c1, c2 = (int(x[0]), int(x[1])), (int(x[2]), int(x[3])) + cv2.rectangle(img, c1, c2, color, thickness=tl, lineType=cv2.LINE_AA) + if label: + tf = max(tl - 1, 1) # font thickness + t_size = cv2.getTextSize(label, 0, fontScale=tl / 3, thickness=tf)[0] + c2 = c1[0] + t_size[0], c1[1] - t_size[1] - 3 + cv2.rectangle(img, c1, c2, color, -1, cv2.LINE_AA) # filled + cv2.putText(img, label, (c1[0], c1[1] - 2), 0, tl / 3, [225, 255, 255], thickness=tf, lineType=cv2.LINE_AA) + + +def plot_wh_methods(): # from utils.general import *; plot_wh_methods() + # Compares the two methods for width-height anchor multiplication + # https://github.com/ultralytics/yolov3/issues/168 + x = np.arange(-4.0, 4.0, .1) + ya = np.exp(x) + yb = torch.sigmoid(torch.from_numpy(x)).numpy() * 2 + + fig = plt.figure(figsize=(6, 3), dpi=150) + plt.plot(x, ya, '.-', label='YOLOv3') + plt.plot(x, yb ** 2, '.-', label='YOLOv5 ^2') + plt.plot(x, yb ** 1.6, '.-', label='YOLOv5 ^1.6') + plt.xlim(left=-4, right=4) + plt.ylim(bottom=0, top=6) + plt.xlabel('input') + plt.ylabel('output') + plt.grid() + plt.legend() + fig.tight_layout() + fig.savefig('comparison.png', dpi=200) + + +def plot_images(images, targets, paths=None, fname='images.jpg', names=None, max_size=640, max_subplots=16): + tl = 3 # line thickness + tf = max(tl - 1, 1) # font thickness + if os.path.isfile(fname): # do not overwrite + return None + + if isinstance(images, torch.Tensor): + images = images.cpu().float().numpy() + + if isinstance(targets, torch.Tensor): + targets = targets.cpu().numpy() + + # un-normalise + if np.max(images[0]) <= 1: + images *= 255 + + bs, _, h, w = images.shape # batch size, _, height, width + bs = min(bs, max_subplots) # limit plot images + ns = np.ceil(bs ** 0.5) # number of subplots (square) + + # Check if we should resize + scale_factor = max_size / max(h, w) + if scale_factor < 1: + h = math.ceil(scale_factor * h) + w = math.ceil(scale_factor * w) + + # Empty array for output + mosaic = np.full((int(ns * h), int(ns * w), 3), 255, dtype=np.uint8) + + # Fix class - colour map + prop_cycle = plt.rcParams['axes.prop_cycle'] + # https://stackoverflow.com/questions/51350872/python-from-color-name-to-rgb + hex2rgb = lambda h: tuple(int(h[1 + i:1 + i + 2], 16) for i in (0, 2, 4)) + color_lut = [hex2rgb(h) for h in prop_cycle.by_key()['color']] + + for i, img in enumerate(images): + if i == max_subplots: # if last batch has fewer images than we expect + break + + block_x = int(w * (i // ns)) + block_y = int(h * (i % ns)) + + img = img.transpose(1, 2, 0) + if scale_factor < 1: + img = cv2.resize(img, (w, h)) + + mosaic[block_y:block_y + h, block_x:block_x + w, :] = img + if len(targets) > 0: + image_targets = targets[targets[:, 0] == i] + boxes = xywh2xyxy(image_targets[:, 2:6]).T + classes = image_targets[:, 1].astype('int') + gt = image_targets.shape[1] == 6 # ground truth if no conf column + conf = None if gt else image_targets[:, 6] # check for confidence presence (gt vs pred) + + boxes[[0, 2]] *= w + boxes[[0, 2]] += block_x + boxes[[1, 3]] *= h + boxes[[1, 3]] += block_y + for j, box in enumerate(boxes.T): + cls = int(classes[j]) + color = color_lut[cls % len(color_lut)] + cls = names[cls] if names else cls + if gt or conf[j] > 0.3: # 0.3 conf thresh + label = '%s' % cls if gt else '%s %.1f' % (cls, conf[j]) + plot_one_box(box, mosaic, label=label, color=color, line_thickness=tl) + + # Draw image filename labels + if paths is not None: + label = os.path.basename(paths[i])[:40] # trim to 40 char + t_size = cv2.getTextSize(label, 0, fontScale=tl / 3, thickness=tf)[0] + cv2.putText(mosaic, label, (block_x + 5, block_y + t_size[1] + 5), 0, tl / 3, [220, 220, 220], thickness=tf, + lineType=cv2.LINE_AA) + + # Image border + cv2.rectangle(mosaic, (block_x, block_y), (block_x + w, block_y + h), (255, 255, 255), thickness=3) + + if fname is not None: + mosaic = cv2.resize(mosaic, (int(ns * w * 0.5), int(ns * h * 0.5)), interpolation=cv2.INTER_AREA) + cv2.imwrite(fname, cv2.cvtColor(mosaic, cv2.COLOR_BGR2RGB)) + + return mosaic + + +def plot_lr_scheduler(optimizer, scheduler, epochs=300, save_dir=''): + # Plot LR simulating training for full epochs + optimizer, scheduler = copy(optimizer), copy(scheduler) # do not modify originals + y = [] + for _ in range(epochs): + scheduler.step() + y.append(optimizer.param_groups[0]['lr']) + plt.plot(y, '.-', label='LR') + plt.xlabel('epoch') + plt.ylabel('LR') + plt.grid() + plt.xlim(0, epochs) + plt.ylim(0) + plt.tight_layout() + plt.savefig(Path(save_dir) / 'LR.png', dpi=200) + + +def plot_test_txt(): # from utils.general import *; plot_test() + # Plot test.txt histograms + x = np.loadtxt('test.txt', dtype=np.float32) + box = xyxy2xywh(x[:, :4]) + cx, cy = box[:, 0], box[:, 1] + + fig, ax = plt.subplots(1, 1, figsize=(6, 6), tight_layout=True) + ax.hist2d(cx, cy, bins=600, cmax=10, cmin=0) + ax.set_aspect('equal') + plt.savefig('hist2d.png', dpi=300) + + fig, ax = plt.subplots(1, 2, figsize=(12, 6), tight_layout=True) + ax[0].hist(cx, bins=600) + ax[1].hist(cy, bins=600) + plt.savefig('hist1d.png', dpi=200) + + +def plot_targets_txt(): # from utils.general import *; plot_targets_txt() + # Plot targets.txt histograms + x = np.loadtxt('targets.txt', dtype=np.float32).T + s = ['x targets', 'y targets', 'width targets', 'height targets'] + fig, ax = plt.subplots(2, 2, figsize=(8, 8), tight_layout=True) + ax = ax.ravel() + for i in range(4): + ax[i].hist(x[i], bins=100, label='%.3g +/- %.3g' % (x[i].mean(), x[i].std())) + ax[i].legend() + ax[i].set_title(s[i]) + plt.savefig('targets.jpg', dpi=200) + + +def plot_study_txt(f='study.txt', x=None): # from utils.general import *; plot_study_txt() + # Plot study.txt generated by test.py + fig, ax = plt.subplots(2, 4, figsize=(10, 6), tight_layout=True) + ax = ax.ravel() + + fig2, ax2 = plt.subplots(1, 1, figsize=(8, 4), tight_layout=True) + for f in ['study/study_coco_yolov5%s.txt' % x for x in ['s', 'm', 'l', 'x']]: + y = np.loadtxt(f, dtype=np.float32, usecols=[0, 1, 2, 3, 7, 8, 9], ndmin=2).T + x = np.arange(y.shape[1]) if x is None else np.array(x) + s = ['P', 'R', 'mAP@.5', 'mAP@.5:.95', 't_inference (ms/img)', 't_NMS (ms/img)', 't_total (ms/img)'] + for i in range(7): + ax[i].plot(x, y[i], '.-', linewidth=2, markersize=8) + ax[i].set_title(s[i]) + + j = y[3].argmax() + 1 + ax2.plot(y[6, :j], y[3, :j] * 1E2, '.-', linewidth=2, markersize=8, + label=Path(f).stem.replace('study_coco_', '').replace('yolo', 'YOLO')) + + ax2.plot(1E3 / np.array([209, 140, 97, 58, 35, 18]), [34.6, 40.5, 43.0, 47.5, 49.7, 51.5], + 'k.-', linewidth=2, markersize=8, alpha=.25, label='EfficientDet') + + ax2.grid() + ax2.set_xlim(0, 30) + ax2.set_ylim(28, 50) + ax2.set_yticks(np.arange(30, 55, 5)) + ax2.set_xlabel('GPU Speed (ms/img)') + ax2.set_ylabel('COCO AP val') + ax2.legend(loc='lower right') + plt.savefig('study_mAP_latency.png', dpi=300) + plt.savefig(f.replace('.txt', '.png'), dpi=300) + + +def plot_labels(labels, save_dir=''): + # plot dataset labels + c, b = labels[:, 0], labels[:, 1:].transpose() # classes, boxes + nc = int(c.max() + 1) # number of classes + + fig, ax = plt.subplots(2, 2, figsize=(8, 8), tight_layout=True) + ax = ax.ravel() + ax[0].hist(c, bins=np.linspace(0, nc, nc + 1) - 0.5, rwidth=0.8) + ax[0].set_xlabel('classes') + ax[1].scatter(b[0], b[1], c=hist2d(b[0], b[1], 90), cmap='jet') + ax[1].set_xlabel('x') + ax[1].set_ylabel('y') + ax[2].scatter(b[2], b[3], c=hist2d(b[2], b[3], 90), cmap='jet') + ax[2].set_xlabel('width') + ax[2].set_ylabel('height') + plt.savefig(Path(save_dir) / 'labels.png', dpi=200) + plt.close() + + +def plot_evolution(yaml_file='runs/evolve/hyp_evolved.yaml'): # from utils.general import *; plot_evolution() + # Plot hyperparameter evolution results in evolve.txt + with open(yaml_file) as f: + hyp = yaml.load(f, Loader=yaml.FullLoader) + x = np.loadtxt('evolve.txt', ndmin=2) + f = fitness(x) + # weights = (f - f.min()) ** 2 # for weighted results + plt.figure(figsize=(10, 10), tight_layout=True) + matplotlib.rc('font', **{'size': 8}) + for i, (k, v) in enumerate(hyp.items()): + y = x[:, i + 7] + # mu = (y * weights).sum() / weights.sum() # best weighted result + mu = y[f.argmax()] # best single result + plt.subplot(5, 5, i + 1) + plt.scatter(y, f, c=hist2d(y, f, 20), cmap='viridis', alpha=.8, edgecolors='none') + plt.plot(mu, f.max(), 'k+', markersize=15) + plt.title('%s = %.3g' % (k, mu), fontdict={'size': 9}) # limit to 40 characters + if i % 5 != 0: + plt.yticks([]) + print('%15s: %.3g' % (k, mu)) + plt.savefig('evolve.png', dpi=200) + print('\nPlot saved as evolve.png') + + +def plot_results_overlay(start=0, stop=0): # from utils.general import *; plot_results_overlay() + # Plot training 'results*.txt', overlaying train and val losses + s = ['train', 'train', 'train', 'Precision', 'mAP@0.5', 'val', 'val', 'val', 'Recall', 'mAP@0.5:0.95'] # legends + t = ['GIoU', 'Objectness', 'Classification', 'P-R', 'mAP-F1'] # titles + for f in sorted(glob.glob('results*.txt') + glob.glob('../../Downloads/results*.txt')): + results = np.loadtxt(f, usecols=[2, 3, 4, 8, 9, 12, 13, 14, 10, 11], ndmin=2).T + n = results.shape[1] # number of rows + x = range(start, min(stop, n) if stop else n) + fig, ax = plt.subplots(1, 5, figsize=(14, 3.5), tight_layout=True) + ax = ax.ravel() + for i in range(5): + for j in [i, i + 5]: + y = results[j, x] + ax[i].plot(x, y, marker='.', label=s[j]) + # y_smooth = butter_lowpass_filtfilt(y) + # ax[i].plot(x, np.gradient(y_smooth), marker='.', label=s[j]) + + ax[i].set_title(t[i]) + ax[i].legend() + ax[i].set_ylabel(f) if i == 0 else None # add filename + fig.savefig(f.replace('.txt', '.png'), dpi=200) + + +def plot_results(start=0, stop=0, bucket='', id=(), labels=(), + save_dir=''): # from utils.general import *; plot_results() + # Plot training 'results*.txt' as seen in https://github.com/ultralytics/yolov5#reproduce-our-training + fig, ax = plt.subplots(2, 5, figsize=(12, 6)) + ax = ax.ravel() + s = ['GIoU', 'Objectness', 'Classification', 'Precision', 'Recall', + 'val GIoU', 'val Objectness', 'val Classification', 'mAP@0.5', 'mAP@0.5:0.95'] + if bucket: + # os.system('rm -rf storage.googleapis.com') + # files = ['https://storage.googleapis.com/%s/results%g.txt' % (bucket, x) for x in id] + files = ['results%g.txt' % x for x in id] + c = ('gsutil cp ' + '%s ' * len(files) + '.') % tuple('gs://%s/results%g.txt' % (bucket, x) for x in id) + os.system(c) else: - dirs = glob.glob(f"{path}{sep}*") # similar paths - matches = [re.search(rf"%s{sep}(\d+)" % path.stem, d) for d in dirs] - i = [int(m.groups()[0]) for m in matches if m] # indices - n = max(i) + 1 if i else 2 # increment number - return f"{path}{sep}{n}" # update path + files = glob.glob(str(Path(save_dir) / 'results*.txt')) + glob.glob('../../Downloads/results*.txt') + for fi, f in enumerate(files): + try: + results = np.loadtxt(f, usecols=[2, 3, 4, 8, 9, 12, 13, 14, 10, 11], ndmin=2).T + n = results.shape[1] # number of rows + x = range(start, min(stop, n) if stop else n) + for i in range(10): + y = results[i, x] + if i in [0, 1, 2, 5, 6, 7]: + y[y == 0] = np.nan # dont show zero loss values + # y /= y[0] # normalize + label = labels[fi] if len(labels) else Path(f).stem + ax[i].plot(x, y, marker='.', label=label, linewidth=2, markersize=8) + ax[i].set_title(s[i]) + # if i in [5, 6, 7]: # share train and val loss y axes + # ax[i].get_shared_y_axes().join(ax[i], ax[i - 5]) + except Exception as e: + print('Warning: Plotting error for %s; %s' % (f, e)) + + fig.tight_layout() + ax[1].legend() + fig.savefig(Path(save_dir) / 'results.png', dpi=200) diff --git a/utils/google_utils.py b/utils/google_utils.py index b357396..5740ece 100644 --- a/utils/google_utils.py +++ b/utils/google_utils.py @@ -1,91 +1,84 @@ -# Google utils: https://cloud.google.com/storage/docs/reference/libraries +# This file contains google utils: https://cloud.google.com/storage/docs/reference/libraries +# pip install --upgrade google-cloud-storage +# from google.cloud import storage import os import platform -import subprocess import time from pathlib import Path - -import requests import torch -def gsutil_getsize(url=''): - # gs://bucket/file size https://cloud.google.com/storage/docs/gsutil/commands/du - s = subprocess.check_output(f'gsutil du {url}', shell=True).decode('utf-8') - return eval(s.split(' ')[0]) if len(s) else 0 # bytes - - -def attempt_download(file, repo='WongKinYiu/yolov7'): - # Attempt file download if does not exist - file = Path(str(file).strip().replace("'", '').lower()) - - if not file.exists(): - try: - response = requests.get(f'https://api.github.com/repos/{repo}/releases/latest').json() # github api - assets = [x['name'] for x in response['assets']] # release assets - tag = response['tag_name'] # i.e. 'v1.0' - except: # fallback plan - assets = ['yolov7.pt'] - # tag = subprocess.check_output('git tag', shell=True).decode(encoding='gbk').split() - # print(tag) - # tag = subprocess.check_output('git tag', shell=True).decode(encoding='gbk').split()[-1] - - name = file.name - if name in assets: - msg = f'{file} missing, try downloading from https://github.com/{repo}/releases/' - redundant = False # second download option - try: # GitHub - url = f'https://github.com/{repo}/releases/download/{tag}/{name}' - print(f'Downloading {url} to {file}...') - torch.hub.download_url_to_file(url, file) - assert file.exists() and file.stat().st_size > 1E6 # check - except Exception as e: # GCP - print(f'Download error: {e}') - assert redundant, 'No secondary mirror' - url = f'https://storage.googleapis.com/{repo}/ckpt/{name}' - print(f'Downloading {url} to {file}...') - os.system(f'curl -L {url} -o {file}') # torch.hub.download_url_to_file(url, weights) - finally: - if not file.exists() or file.stat().st_size < 1E6: # check - file.unlink(missing_ok=True) # remove partial downloads - print(f'ERROR: Download failure: {msg}') - print('') - return - - -def gdrive_download(id='', file='tmp.zip'): - # Downloads a file from Google Drive. from yolov7.utils.google_utils import *; gdrive_download() +def attempt_download(weights): + # Attempt to download pretrained weights if not found locally + weights = weights.strip().replace("'", '') + file = Path(weights).name + + msg = weights + ' missing, try downloading from https://github.com/ultralytics/yolov5/releases/' + models = ['yolov5s.pt', 'yolov5m.pt', 'yolov5l.pt', 'yolov5x.pt'] # available models + + if file in models and not os.path.isfile(weights): + # Google Drive + # d = {'yolov5s.pt': '1R5T6rIyy3lLwgFXNms8whc-387H0tMQO', + # 'yolov5m.pt': '1vobuEExpWQVpXExsJ2w-Mbf3HJjWkQJr', + # 'yolov5l.pt': '1hrlqD1Wdei7UT4OgT785BEk1JwnSvNEV', + # 'yolov5x.pt': '1mM8aZJlWTxOg7BZJvNUMrTnA2AbeCVzS'} + # r = gdrive_download(id=d[file], name=weights) if file in d else 1 + # if r == 0 and os.path.exists(weights) and os.path.getsize(weights) > 1E6: # check + # return + + try: # GitHub + url = 'https://github.com/ultralytics/yolov5/releases/download/v3.0/' + file + print('Downloading %s to %s...' % (url, weights)) + if platform.system() == 'Darwin': # avoid MacOS python requests certificate error + r = os.system('curl -L %s -o %s' % (url, weights)) + else: + torch.hub.download_url_to_file(url, weights) + assert os.path.exists(weights) and os.path.getsize(weights) > 1E6 # check + except Exception as e: # GCP + print('Download error: %s' % e) + url = 'https://storage.googleapis.com/ultralytics/yolov5/ckpt/' + file + print('Downloading %s to %s...' % (url, weights)) + r = os.system('curl -L %s -o %s' % (url, weights)) # torch.hub.download_url_to_file(url, weights) + finally: + if not (os.path.exists(weights) and os.path.getsize(weights) > 1E6): # check + os.remove(weights) if os.path.exists(weights) else None # remove partial downloads + print('ERROR: Download failure: %s' % msg) + print('') + return + + +def gdrive_download(id='1n_oKgR81BJtqk75b00eAjdv03qVCQn2f', name='coco128.zip'): + # Downloads a file from Google Drive. from utils.google_utils import *; gdrive_download() t = time.time() - file = Path(file) - cookie = Path('cookie') # gdrive cookie - print(f'Downloading https://drive.google.com/uc?export=download&id={id} as {file}... ', end='') - file.unlink(missing_ok=True) # remove existing file - cookie.unlink(missing_ok=True) # remove existing cookie + + print('Downloading https://drive.google.com/uc?export=download&id=%s as %s... ' % (id, name), end='') + os.remove(name) if os.path.exists(name) else None # remove existing + os.remove('cookie') if os.path.exists('cookie') else None # Attempt file download out = "NUL" if platform.system() == "Windows" else "/dev/null" - os.system(f'curl -c ./cookie -s -L "drive.google.com/uc?export=download&id={id}" > {out}') + os.system('curl -c ./cookie -s -L "drive.google.com/uc?export=download&id=%s" > %s ' % (id, out)) if os.path.exists('cookie'): # large file - s = f'curl -Lb ./cookie "drive.google.com/uc?export=download&confirm={get_token()}&id={id}" -o {file}' + s = 'curl -Lb ./cookie "drive.google.com/uc?export=download&confirm=%s&id=%s" -o %s' % (get_token(), id, name) else: # small file - s = f'curl -s -L -o {file} "drive.google.com/uc?export=download&id={id}"' + s = 'curl -s -L -o %s "drive.google.com/uc?export=download&id=%s"' % (name, id) r = os.system(s) # execute, capture return - cookie.unlink(missing_ok=True) # remove existing cookie + os.remove('cookie') if os.path.exists('cookie') else None # Error check if r != 0: - file.unlink(missing_ok=True) # remove partial + os.remove(name) if os.path.exists(name) else None # remove partial print('Download error ') # raise Exception('Download error') return r # Unzip if archive - if file.suffix == '.zip': + if name.endswith('.zip'): print('unzipping... ', end='') - os.system(f'unzip -q {file}') # unzip - file.unlink() # remove zip to free space + os.system('unzip -q %s' % name) # unzip + os.remove(name) # remove zip to free space - print(f'Done ({time.time() - t:.1f}s)') + print('Done (%.1fs)' % (time.time() - t)) return r diff --git a/utils/torch_utils.py b/utils/torch_utils.py index 004bbe7..0906d58 100644 --- a/utils/torch_utils.py +++ b/utils/torch_utils.py @@ -1,137 +1,62 @@ -# YOLOR PyTorch utils - -import datetime -import logging import math import os -import platform -import subprocess import time -from contextlib import contextmanager +import logging from copy import deepcopy -from pathlib import Path import torch import torch.backends.cudnn as cudnn import torch.nn as nn import torch.nn.functional as F -import torchvision +import torchvision.models as models -try: - import thop # for FLOPS computation -except ImportError: - thop = None logger = logging.getLogger(__name__) -@contextmanager -def torch_distributed_zero_first(local_rank: int): - """ - Decorator to make all processes in distributed training wait for each local_master to do something. - """ - if local_rank not in [-1, 0]: - torch.distributed.barrier() - yield - if local_rank == 0: - torch.distributed.barrier() - +def init_seeds(seed=0): + torch.manual_seed(seed) -def init_torch_seeds(seed=0): # Speed-reproducibility tradeoff https://pytorch.org/docs/stable/notes/randomness.html - torch.manual_seed(seed) if seed == 0: # slower, more reproducible - cudnn.benchmark, cudnn.deterministic = False, True + cudnn.deterministic = True + cudnn.benchmark = False else: # faster, less reproducible - cudnn.benchmark, cudnn.deterministic = True, False - - -def date_modified(path=__file__): - # return human-readable file modification date, i.e. '2021-3-26' - t = datetime.datetime.fromtimestamp(Path(path).stat().st_mtime) - return f'{t.year}-{t.month}-{t.day}' - - -def git_describe(path=Path(__file__).parent): # path must be a directory - # return human-readable git description, i.e. v5.0-5-g3e25f1e https://git-scm.com/docs/git-describe - s = f'git -C {path} describe --tags --long --always' - try: - return subprocess.check_output(s, shell=True, stderr=subprocess.STDOUT).decode(encoding='gbk')[:-1] - except subprocess.CalledProcessError as e: - return '' # not a git repository + cudnn.deterministic = False + cudnn.benchmark = True def select_device(device='', batch_size=None): # device = 'cpu' or '0' or '0,1,2,3' - s = f'YOLOR 🚀 {git_describe() or date_modified()} torch {torch.__version__} ' # string - cpu = device.lower() == 'cpu' - if cpu: - os.environ['CUDA_VISIBLE_DEVICES'] = '-1' # force torch.cuda.is_available() = False - elif device: # non-cpu device requested + cpu_request = device.lower() == 'cpu' + if device and not cpu_request: # if device requested other than 'cpu' os.environ['CUDA_VISIBLE_DEVICES'] = device # set environment variable - assert torch.cuda.is_available(), f'CUDA unavailable, invalid device {device} requested' # check availability + assert torch.cuda.is_available(), 'CUDA unavailable, invalid device %s requested' % device # check availablity - cuda = not cpu and torch.cuda.is_available() + cuda = False if cpu_request else torch.cuda.is_available() if cuda: - n = torch.cuda.device_count() - if n > 1 and batch_size: # check that batch_size is compatible with device_count - assert batch_size % n == 0, f'batch-size {batch_size} not multiple of GPU count {n}' - space = ' ' * len(s) - for i, d in enumerate(device.split(',') if device else range(n)): - p = torch.cuda.get_device_properties(i) - s += f"{'' if i == 0 else space}CUDA:{d} ({p.name}, {p.total_memory / 1024 ** 2}MB)\n" # bytes to MB + c = 1024 ** 2 # bytes to MB + ng = torch.cuda.device_count() + if ng > 1 and batch_size: # check that batch_size is compatible with device_count + assert batch_size % ng == 0, 'batch-size %g not multiple of GPU count %g' % (batch_size, ng) + x = [torch.cuda.get_device_properties(i) for i in range(ng)] + s = 'Using CUDA ' + for i in range(0, ng): + if i == 1: + s = ' ' * len(s) + logger.info("%sdevice%g _CudaDeviceProperties(name='%s', total_memory=%dMB)" % + (s, i, x[i].name, x[i].total_memory / c)) else: - s += 'CPU\n' + logger.info('Using CPU') - logger.info(s.encode().decode('ascii', 'ignore') if platform.system() == 'Windows' else s) # emoji-safe + logger.info('') # skip a line return torch.device('cuda:0' if cuda else 'cpu') def time_synchronized(): - # pytorch-accurate time - if torch.cuda.is_available(): - torch.cuda.synchronize() + torch.cuda.synchronize() if torch.cuda.is_available() else None return time.time() -def profile(x, ops, n=100, device=None): - # profile a pytorch module or list of modules. Example usage: - # x = torch.randn(16, 3, 640, 640) # input - # m1 = lambda x: x * torch.sigmoid(x) - # m2 = nn.SiLU() - # profile(x, [m1, m2], n=100) # profile speed over 100 iterations - - device = device or torch.device('cuda:0' if torch.cuda.is_available() else 'cpu') - x = x.to(device) - x.requires_grad = True - print(torch.__version__, device.type, torch.cuda.get_device_properties(0) if device.type == 'cuda' else '') - print(f"\n{'Params':>12s}{'GFLOPS':>12s}{'forward (ms)':>16s}{'backward (ms)':>16s}{'input':>24s}{'output':>24s}") - for m in ops if isinstance(ops, list) else [ops]: - m = m.to(device) if hasattr(m, 'to') else m # device - m = m.half() if hasattr(m, 'half') and isinstance(x, torch.Tensor) and x.dtype is torch.float16 else m # type - dtf, dtb, t = 0., 0., [0., 0., 0.] # dt forward, backward - try: - flops = thop.profile(m, inputs=(x,), verbose=False)[0] / 1E9 * 2 # GFLOPS - except: - flops = 0 - - for _ in range(n): - t[0] = time_synchronized() - y = m(x) - t[1] = time_synchronized() - try: - _ = y.sum().backward() - t[2] = time_synchronized() - except: # no backward method - t[2] = float('nan') - dtf += (t[1] - t[0]) * 1000 / n # ms per op forward - dtb += (t[2] - t[1]) * 1000 / n # ms per op backward - - s_in = tuple(x.shape) if isinstance(x, torch.Tensor) else 'list' - s_out = tuple(y.shape) if isinstance(y, torch.Tensor) else 'list' - p = sum(list(x.numel() for x in m.parameters())) if isinstance(m, nn.Module) else 0 # parameters - print(f'{p:12}{flops:12.4g}{dtf:16.4g}{dtb:16.4g}{str(s_in):>24s}{str(s_out):>24s}') - - def is_parallel(model): return type(model) in (nn.parallel.DataParallel, nn.parallel.DistributedDataParallel) @@ -149,7 +74,7 @@ def initialize_weights(model): elif t is nn.BatchNorm2d: m.eps = 1e-3 m.momentum = 0.03 - elif t in [nn.Hardswish, nn.LeakyReLU, nn.ReLU, nn.ReLU6]: + elif t in [nn.LeakyReLU, nn.ReLU, nn.ReLU6]: m.inplace = True @@ -179,30 +104,31 @@ def prune(model, amount=0.3): def fuse_conv_and_bn(conv, bn): - # Fuse convolution and batchnorm layers https://tehnokv.com/posts/fusing-batchnorm-and-conv/ - fusedconv = nn.Conv2d(conv.in_channels, - conv.out_channels, - kernel_size=conv.kernel_size, - stride=conv.stride, - padding=conv.padding, - groups=conv.groups, - bias=True).requires_grad_(False).to(conv.weight.device) - - # prepare filters - w_conv = conv.weight.clone().view(conv.out_channels, -1) - w_bn = torch.diag(bn.weight.div(torch.sqrt(bn.eps + bn.running_var))) - fusedconv.weight.copy_(torch.mm(w_bn, w_conv).view(fusedconv.weight.shape)) - - # prepare spatial bias - b_conv = torch.zeros(conv.weight.size(0), device=conv.weight.device) if conv.bias is None else conv.bias - b_bn = bn.bias - bn.weight.mul(bn.running_mean).div(torch.sqrt(bn.running_var + bn.eps)) - fusedconv.bias.copy_(torch.mm(w_bn, b_conv.reshape(-1, 1)).reshape(-1) + b_bn) - - return fusedconv - - -def model_info(model, verbose=False, img_size=640): - # Model information. img_size may be int or list, i.e. img_size=640 or img_size=[640, 320] + # https://tehnokv.com/posts/fusing-batchnorm-and-conv/ + with torch.no_grad(): + # init + fusedconv = nn.Conv2d(conv.in_channels, + conv.out_channels, + kernel_size=conv.kernel_size, + stride=conv.stride, + padding=conv.padding, + bias=True).to(conv.weight.device) + + # prepare filters + w_conv = conv.weight.clone().view(conv.out_channels, -1) + w_bn = torch.diag(bn.weight.div(torch.sqrt(bn.eps + bn.running_var))) + fusedconv.weight.copy_(torch.mm(w_bn, w_conv).view(fusedconv.weight.size())) + + # prepare spatial bias + b_conv = torch.zeros(conv.weight.size(0), device=conv.weight.device) if conv.bias is None else conv.bias + b_bn = bn.bias - bn.weight.mul(bn.running_mean).div(torch.sqrt(bn.running_var + bn.eps)) + fusedconv.bias.copy_(torch.mm(w_bn, b_conv.reshape(-1, 1)).reshape(-1) + b_bn) + + return fusedconv + + +def model_info(model, verbose=False): + # Plots a line-by-line description of a PyTorch model n_p = sum(x.numel() for x in model.parameters()) # number parameters n_g = sum(x.numel() for x in model.parameters() if x.requires_grad) # number gradients if verbose: @@ -214,27 +140,27 @@ def model_info(model, verbose=False, img_size=640): try: # FLOPS from thop import profile - stride = max(int(model.stride.max()), 32) if hasattr(model, 'stride') else 32 - img = torch.zeros((1, model.yaml.get('ch', 3), stride, stride), device=next(model.parameters()).device) # input - flops = profile(deepcopy(model), inputs=(img,), verbose=False)[0] / 1E9 * 2 # stride GFLOPS - img_size = img_size if isinstance(img_size, list) else [img_size, img_size] # expand if int/float - fs = ', %.1f GFLOPS' % (flops * img_size[0] / stride * img_size[1] / stride) # 640x640 GFLOPS - except (ImportError, Exception): + flops = profile(deepcopy(model), inputs=(torch.zeros(1, 3, 64, 64),), verbose=False)[0] / 1E9 * 2 + fs = ', %.1f GFLOPS' % (flops * 100) # 640x640 FLOPS + except: fs = '' - logger.info(f"Model Summary: {len(list(model.modules()))} layers, {n_p} parameters, {n_g} gradients{fs}") + logger.info( + 'Model Summary: %g layers, %g parameters, %g gradients%s' % (len(list(model.parameters())), n_p, n_g, fs)) def load_classifier(name='resnet101', n=2): # Loads a pretrained model reshaped to n-class output - model = torchvision.models.__dict__[name](pretrained=True) + model = models.__dict__[name](pretrained=True) - # ResNet model properties - # input_size = [3, 224, 224] - # input_space = 'RGB' - # input_range = [0, 1] - # mean = [0.485, 0.456, 0.406] - # std = [0.229, 0.224, 0.225] + # Display model properties + input_size = [3, 224, 224] + input_space = 'RGB' + input_range = [0, 1] + mean = [0.485, 0.456, 0.406] + std = [0.229, 0.224, 0.225] + for x in [input_size, input_space, input_range, mean, std]: + print(x + ' =', eval(x)) # Reshape output to n classes filters = model.fc.weight.shape[1] @@ -244,8 +170,8 @@ def load_classifier(name='resnet101', n=2): return model -def scale_img(img, ratio=1.0, same_shape=False, gs=32): # img(16,3,256,416) - # scales img(bs,3,y,x) by ratio constrained to gs-multiple +def scale_img(img, ratio=1.0, same_shape=False): # img(16,3,256,416), r=ratio + # scales img(bs,3,y,x) by ratio if ratio == 1.0: return img else: @@ -253,6 +179,7 @@ def scale_img(img, ratio=1.0, same_shape=False, gs=32): # img(16,3,256,416) s = (int(h * ratio), int(w * ratio)) # new size img = F.interpolate(img, size=s, mode='bilinear', align_corners=False) # resize if not same_shape: # pad/crop img + gs = 32 # (pixels) grid size h, w = [math.ceil(x * ratio / gs) * gs for x in (h, w)] return F.pad(img, [0, w - s[1], 0, h - s[0]], value=0.447) # value = imagenet mean @@ -301,74 +228,3 @@ class ModelEMA: def update_attr(self, model, include=(), exclude=('process_group', 'reducer')): # Update EMA attributes copy_attr(self.ema, model, include, exclude) - - -class BatchNormXd(torch.nn.modules.batchnorm._BatchNorm): - def _check_input_dim(self, input): - # The only difference between BatchNorm1d, BatchNorm2d, BatchNorm3d, etc - # is this method that is overwritten by the sub-class - # This original goal of this method was for tensor sanity checks - # If you're ok bypassing those sanity checks (eg. if you trust your inference - # to provide the right dimensional inputs), then you can just use this method - # for easy conversion from SyncBatchNorm - # (unfortunately, SyncBatchNorm does not store the original class - if it did - # we could return the one that was originally created) - return - -def revert_sync_batchnorm(module): - # this is very similar to the function that it is trying to revert: - # https://github.com/pytorch/pytorch/blob/c8b3686a3e4ba63dc59e5dcfe5db3430df256833/torch/nn/modules/batchnorm.py#L679 - module_output = module - if isinstance(module, torch.nn.modules.batchnorm.SyncBatchNorm): - new_cls = BatchNormXd - module_output = BatchNormXd(module.num_features, - module.eps, module.momentum, - module.affine, - module.track_running_stats) - if module.affine: - with torch.no_grad(): - module_output.weight = module.weight - module_output.bias = module.bias - module_output.running_mean = module.running_mean - module_output.running_var = module.running_var - module_output.num_batches_tracked = module.num_batches_tracked - if hasattr(module, "qconfig"): - module_output.qconfig = module.qconfig - for name, child in module.named_children(): - module_output.add_module(name, revert_sync_batchnorm(child)) - del module - return module_output - - -class TracedModel(nn.Module): - - def __init__(self, model=None, device=None, img_size=(640,640)): - super(TracedModel, self).__init__() - - print(" Convert model to Traced-model... ") - self.stride = model.stride - self.names = model.names - self.model = model - - self.model = revert_sync_batchnorm(self.model) - self.model.to('cpu') - self.model.eval() - - self.detect_layer = self.model.model[-1] - self.model.traced = True - - rand_example = torch.rand(1, 3, img_size, img_size) - - traced_script_module = torch.jit.trace(self.model, rand_example, strict=False) - #traced_script_module = torch.jit.script(self.model) - traced_script_module.save("traced_model.pt") - print(" traced_script_module saved! ") - self.model = traced_script_module - self.model.to(device) - self.detect_layer.to(device) - print(" model is traced! \n") - - def forward(self, x, augment=False, profile=False): - out = self.model(x) - out = self.detect_layer(out) - return out \ No newline at end of file diff --git a/utils/utils.py b/utils/utils.py new file mode 100644 index 0000000..627fc9d --- /dev/null +++ b/utils/utils.py @@ -0,0 +1,1270 @@ +import glob +import math +import os +import random +import shutil +import subprocess +import time +from copy import copy +from pathlib import Path +from sys import platform + +import cv2 +import matplotlib +import matplotlib.pyplot as plt +import numpy as np +import torch +import torch.nn as nn +import torchvision +import yaml +from scipy.signal import butter, filtfilt +import itertools +from tqdm import tqdm + +from . import torch_utils, google_utils #  torch_utils, google_utils + +# Set printoptions +torch.set_printoptions(linewidth=320, precision=5, profile='long') +np.set_printoptions(linewidth=320, formatter={'float_kind': '{:11.5g}'.format}) # format short g, %precision=5 +matplotlib.rc('font', **{'size': 11}) + +# Prevent OpenCV from multithreading (to use PyTorch DataLoader) +cv2.setNumThreads(0) + + +def init_seeds(seed=0): + random.seed(seed) + np.random.seed(seed) + torch_utils.init_seeds(seed=seed) + + +def check_git_status(): + # Suggest 'git pull' if repo is out of date + if platform in ['linux', 'darwin']: + s = subprocess.check_output('if [ -d .git ]; then git fetch && git status -uno; fi', shell=True).decode('utf-8') + if 'Your branch is behind' in s: + print(s[s.find('Your branch is behind'):s.find('\n\n')] + '\n') + + +def check_img_size(img_size, s=32): + # Verify img_size is a multiple of stride s + new_size = make_divisible(img_size, s) # ceil gs-multiple + if new_size != img_size: + print('WARNING: --img-size %g must be multiple of max stride %g, updating to %g' % (img_size, s, new_size)) + return new_size + + +def check_anchors(dataset, model, thr=4.0, imgsz=640): + # Check anchor fit to data, recompute if necessary + print('\nAnalyzing anchors... ', end='') + m = model.module.model[-1] if hasattr(model, 'module') else model.model[-1] # Detect() + shapes = imgsz * dataset.shapes / dataset.shapes.max(1, keepdims=True) + wh = torch.tensor(np.concatenate([l[:, 3:5] * s for s, l in zip(shapes, dataset.labels)])).float() # wh + + def metric(k): # compute metric + r = wh[:, None] / k[None] + x = torch.min(r, 1. / r).min(2)[0] # ratio metric + best = x.max(1)[0] # best_x + return (best > 1. / thr).float().mean() #  best possible recall + + bpr = metric(m.anchor_grid.clone().cpu().view(-1, 2)) + print('Best Possible Recall (BPR) = %.4f' % bpr, end='') + if bpr < 0.99: # threshold to recompute + print('. Attempting to generate improved anchors, please wait...' % bpr) + na = m.anchor_grid.numel() // 2 # number of anchors + new_anchors = kmean_anchors(dataset, n=na, img_size=imgsz, thr=thr, gen=1000, verbose=False) + new_bpr = metric(new_anchors.reshape(-1, 2)) + if new_bpr > bpr: # replace anchors + new_anchors = torch.tensor(new_anchors, device=m.anchors.device).type_as(m.anchors) + m.anchor_grid[:] = new_anchors.clone().view_as(m.anchor_grid) # for inference + m.anchors[:] = new_anchors.clone().view_as(m.anchors) / m.stride.to(m.anchors.device).view(-1, 1, 1) # loss + print('New anchors saved to model. Update model *.yaml to use these anchors in the future.') + else: + print('Original anchors better than new anchors. Proceeding with original anchors.') + print('') # newline + + +def check_file(file): + # Searches for file if not found locally + if os.path.isfile(file): + return file + else: + files = glob.glob('./**/' + file, recursive=True) # find file + assert len(files), 'File Not Found: %s' % file # assert file was found + return files[0] # return first file if multiple found + + +def make_divisible(x, divisor): + # Returns x evenly divisble by divisor + return math.ceil(x / divisor) * divisor + + +def labels_to_class_weights(labels, nc=80): + # Get class weights (inverse frequency) from training labels + if labels[0] is None: # no labels loaded + return torch.Tensor() + + labels = np.concatenate(labels, 0) # labels.shape = (866643, 5) for COCO + classes = labels[:, 0].astype(np.int) # labels = [class xywh] + weights = np.bincount(classes, minlength=nc) # occurences per class + + # Prepend gridpoint count (for uCE trianing) + # gpi = ((320 / 32 * np.array([1, 2, 4])) ** 2 * 3).sum() # gridpoints per image + # weights = np.hstack([gpi * len(labels) - weights.sum() * 9, weights * 9]) ** 0.5 # prepend gridpoints to start + + weights[weights == 0] = 1 # replace empty bins with 1 + weights = 1 / weights # number of targets per class + weights /= weights.sum() # normalize + return torch.from_numpy(weights) + + +def labels_to_image_weights(labels, nc=80, class_weights=np.ones(80)): + # Produces image weights based on class mAPs + n = len(labels) + class_counts = np.array([np.bincount(labels[i][:, 0].astype(np.int), minlength=nc) for i in range(n)]) + image_weights = (class_weights.reshape(1, nc) * class_counts).sum(1) + # index = random.choices(range(n), weights=image_weights, k=1) # weight image sample + return image_weights + + +def coco80_to_coco91_class(): # converts 80-index (val2014) to 91-index (paper) + # https://tech.amikelive.com/node-718/what-object-categories-labels-are-in-coco-dataset/ + # a = np.loadtxt('data/coco.names', dtype='str', delimiter='\n') + # b = np.loadtxt('data/coco_paper.names', dtype='str', delimiter='\n') + # x1 = [list(a[i] == b).index(True) + 1 for i in range(80)] # darknet to coco + # x2 = [list(b[i] == a).index(True) if any(b[i] == a) else None for i in range(91)] # coco to darknet + x = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 27, 28, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, + 64, 65, 67, 70, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 84, 85, 86, 87, 88, 89, 90] + return x + + +def xyxy2xywh(x): + # Convert nx4 boxes from [x1, y1, x2, y2] to [x, y, w, h] where xy1=top-left, xy2=bottom-right + y = torch.zeros_like(x) if isinstance(x, torch.Tensor) else np.zeros_like(x) + y[:, 0] = (x[:, 0] + x[:, 2]) / 2 # x center + y[:, 1] = (x[:, 1] + x[:, 3]) / 2 # y center + y[:, 2] = x[:, 2] - x[:, 0] # width + y[:, 3] = x[:, 3] - x[:, 1] # height + return y + + +def xywh2xyxy(x): + # Convert nx4 boxes from [x, y, w, h] to [x1, y1, x2, y2] where xy1=top-left, xy2=bottom-right + y = torch.zeros_like(x) if isinstance(x, torch.Tensor) else np.zeros_like(x) + y[:, 0] = x[:, 0] - x[:, 2] / 2 # top left x + y[:, 1] = x[:, 1] - x[:, 3] / 2 # top left y + y[:, 2] = x[:, 0] + x[:, 2] / 2 # bottom right x + y[:, 3] = x[:, 1] + x[:, 3] / 2 # bottom right y + return y + + +def scale_coords(img1_shape, coords, img0_shape, ratio_pad=None): + # Rescale coords (xyxy) from img1_shape to img0_shape + if ratio_pad is None: # calculate from img0_shape + gain = max(img1_shape) / max(img0_shape) # gain = old / new + pad = (img1_shape[1] - img0_shape[1] * gain) / 2, (img1_shape[0] - img0_shape[0] * gain) / 2 # wh padding + else: + gain = ratio_pad[0][0] + pad = ratio_pad[1] + + coords[:, [0, 2]] -= pad[0] # x padding + coords[:, [1, 3]] -= pad[1] # y padding + coords[:, :4] /= gain + clip_coords(coords, img0_shape) + return coords + + +def clip_coords(boxes, img_shape): + # Clip bounding xyxy bounding boxes to image shape (height, width) + boxes[:, 0].clamp_(0, img_shape[1]) # x1 + boxes[:, 1].clamp_(0, img_shape[0]) # y1 + boxes[:, 2].clamp_(0, img_shape[1]) # x2 + boxes[:, 3].clamp_(0, img_shape[0]) # y2 + + +def ap_per_class(tp, conf, pred_cls, target_cls): + """ Compute the average precision, given the recall and precision curves. + Source: https://github.com/rafaelpadilla/Object-Detection-Metrics. + # Arguments + tp: True positives (nparray, nx1 or nx10). + conf: Objectness value from 0-1 (nparray). + pred_cls: Predicted object classes (nparray). + target_cls: True object classes (nparray). + # Returns + The average precision as computed in py-faster-rcnn. + """ + + # Sort by objectness + i = np.argsort(-conf) + tp, conf, pred_cls = tp[i], conf[i], pred_cls[i] + + # Find unique classes + unique_classes = np.unique(target_cls) + + # Create Precision-Recall curve and compute AP for each class + pr_score = 0.1 # score to evaluate P and R https://github.com/ultralytics/yolov3/issues/898 + s = [unique_classes.shape[0], tp.shape[1]] # number class, number iou thresholds (i.e. 10 for mAP0.5...0.95) + ap, p, r = np.zeros(s), np.zeros(s), np.zeros(s) + for ci, c in enumerate(unique_classes): + i = pred_cls == c + n_gt = (target_cls == c).sum() # Number of ground truth objects + n_p = i.sum() # Number of predicted objects + + if n_p == 0 or n_gt == 0: + continue + else: + # Accumulate FPs and TPs + fpc = (1 - tp[i]).cumsum(0) + tpc = tp[i].cumsum(0) + + # Recall + recall = tpc / (n_gt + 1e-16) # recall curve + r[ci] = np.interp(-pr_score, -conf[i], recall[:, 0]) # r at pr_score, negative x, xp because xp decreases + + # Precision + precision = tpc / (tpc + fpc) # precision curve + p[ci] = np.interp(-pr_score, -conf[i], precision[:, 0]) # p at pr_score + + # AP from recall-precision curve + for j in range(tp.shape[1]): + ap[ci, j] = compute_ap(recall[:, j], precision[:, j]) + + # Plot + # fig, ax = plt.subplots(1, 1, figsize=(5, 5)) + # ax.plot(recall, precision) + # ax.set_xlabel('Recall') + # ax.set_ylabel('Precision') + # ax.set_xlim(0, 1.01) + # ax.set_ylim(0, 1.01) + # fig.tight_layout() + # fig.savefig('PR_curve.png', dpi=300) + + # Compute F1 score (harmonic mean of precision and recall) + f1 = 2 * p * r / (p + r + 1e-16) + + return p, r, ap, f1, unique_classes.astype('int32') + + +def compute_ap(recall, precision): + """ Compute the average precision, given the recall and precision curves. + Source: https://github.com/rbgirshick/py-faster-rcnn. + # Arguments + recall: The recall curve (list). + precision: The precision curve (list). + # Returns + The average precision as computed in py-faster-rcnn. + """ + + # Append sentinel values to beginning and end + mrec = np.concatenate(([0.], recall, [min(recall[-1] + 1E-3, 1.)])) + mpre = np.concatenate(([0.], precision, [0.])) + + # Compute the precision envelope + mpre = np.flip(np.maximum.accumulate(np.flip(mpre))) + + # Integrate area under curve + method = 'interp' # methods: 'continuous', 'interp' + if method == 'interp': + x = np.linspace(0, 1, 101) # 101-point interp (COCO) + ap = np.trapz(np.interp(x, mrec, mpre), x) # integrate + else: # 'continuous' + i = np.where(mrec[1:] != mrec[:-1])[0] # points where x axis (recall) changes + ap = np.sum((mrec[i + 1] - mrec[i]) * mpre[i + 1]) # area under curve + + return ap + + +def bbox_iou(box1, box2, x1y1x2y2=True, GIoU=False, DIoU=False, CIoU=False): + # Returns the IoU of box1 to box2. box1 is 4, box2 is nx4 + box2 = box2.t() + + # Get the coordinates of bounding boxes + if x1y1x2y2: # x1, y1, x2, y2 = box1 + b1_x1, b1_y1, b1_x2, b1_y2 = box1[0], box1[1], box1[2], box1[3] + b2_x1, b2_y1, b2_x2, b2_y2 = box2[0], box2[1], box2[2], box2[3] + else: # transform from xywh to xyxy + b1_x1, b1_x2 = box1[0] - box1[2] / 2, box1[0] + box1[2] / 2 + b1_y1, b1_y2 = box1[1] - box1[3] / 2, box1[1] + box1[3] / 2 + b2_x1, b2_x2 = box2[0] - box2[2] / 2, box2[0] + box2[2] / 2 + b2_y1, b2_y2 = box2[1] - box2[3] / 2, box2[1] + box2[3] / 2 + + # Intersection area + inter = (torch.min(b1_x2, b2_x2) - torch.max(b1_x1, b2_x1)).clamp(0) * \ + (torch.min(b1_y2, b2_y2) - torch.max(b1_y1, b2_y1)).clamp(0) + + # Union Area + w1, h1 = b1_x2 - b1_x1, b1_y2 - b1_y1 + w2, h2 = b2_x2 - b2_x1, b2_y2 - b2_y1 + union = (w1 * h1 + 1e-16) + w2 * h2 - inter + + iou = inter / union # iou + if GIoU or DIoU or CIoU: + cw = torch.max(b1_x2, b2_x2) - torch.min(b1_x1, b2_x1) # convex (smallest enclosing box) width + ch = torch.max(b1_y2, b2_y2) - torch.min(b1_y1, b2_y1) # convex height + if GIoU: # Generalized IoU https://arxiv.org/pdf/1902.09630.pdf + c_area = cw * ch + 1e-16 # convex area + return iou - (c_area - union) / c_area # GIoU + if DIoU or CIoU: # Distance or Complete IoU https://arxiv.org/abs/1911.08287v1 + # convex diagonal squared + c2 = cw ** 2 + ch ** 2 + 1e-16 + # centerpoint distance squared + rho2 = ((b2_x1 + b2_x2) - (b1_x1 + b1_x2)) ** 2 / 4 + ((b2_y1 + b2_y2) - (b1_y1 + b1_y2)) ** 2 / 4 + if DIoU: + return iou - rho2 / c2 # DIoU + elif CIoU: # https://github.com/Zzh-tju/DIoU-SSD-pytorch/blob/master/utils/box/box_utils.py#L47 + v = (4 / math.pi ** 2) * torch.pow(torch.atan(w2 / h2) - torch.atan(w1 / h1), 2) + with torch.no_grad(): + alpha = v / (1 - iou + v) + return iou - (rho2 / c2 + v * alpha) # CIoU + + return iou + + +def box_iou(box1, box2): + # https://github.com/pytorch/vision/blob/master/torchvision/ops/boxes.py + """ + Return intersection-over-union (Jaccard index) of boxes. + Both sets of boxes are expected to be in (x1, y1, x2, y2) format. + Arguments: + box1 (Tensor[N, 4]) + box2 (Tensor[M, 4]) + Returns: + iou (Tensor[N, M]): the NxM matrix containing the pairwise + IoU values for every element in boxes1 and boxes2 + """ + + def box_area(box): + # box = 4xn + return (box[2] - box[0]) * (box[3] - box[1]) + + area1 = box_area(box1.t()) + area2 = box_area(box2.t()) + + # inter(N,M) = (rb(N,M,2) - lt(N,M,2)).clamp(0).prod(2) + inter = (torch.min(box1[:, None, 2:], box2[:, 2:]) - torch.max(box1[:, None, :2], box2[:, :2])).clamp(0).prod(2) + return inter / (area1[:, None] + area2 - inter) # iou = inter / (area1 + area2 - inter) + + +def wh_iou(wh1, wh2): + # Returns the nxm IoU matrix. wh1 is nx2, wh2 is mx2 + wh1 = wh1[:, None] # [N,1,2] + wh2 = wh2[None] # [1,M,2] + inter = torch.min(wh1, wh2).prod(2) # [N,M] + return inter / (wh1.prod(2) + wh2.prod(2) - inter) # iou = inter / (area1 + area2 - inter) + + +class FocalLoss(nn.Module): + # Wraps focal loss around existing loss_fcn(), i.e. criteria = FocalLoss(nn.BCEWithLogitsLoss(), gamma=1.5) + def __init__(self, loss_fcn, gamma=1.5, alpha=0.25): + super(FocalLoss, self).__init__() + self.loss_fcn = loss_fcn # must be nn.BCEWithLogitsLoss() + self.gamma = gamma + self.alpha = alpha + self.reduction = loss_fcn.reduction + self.loss_fcn.reduction = 'none' # required to apply FL to each element + + def forward(self, pred, true): + loss = self.loss_fcn(pred, true) + # p_t = torch.exp(-loss) + # loss *= self.alpha * (1.000001 - p_t) ** self.gamma # non-zero power for gradient stability + + # TF implementation https://github.com/tensorflow/addons/blob/v0.7.1/tensorflow_addons/losses/focal_loss.py + pred_prob = torch.sigmoid(pred) # prob from logits + p_t = true * pred_prob + (1 - true) * (1 - pred_prob) + alpha_factor = true * self.alpha + (1 - true) * (1 - self.alpha) + modulating_factor = (1.0 - p_t) ** self.gamma + loss *= alpha_factor * modulating_factor + + if self.reduction == 'mean': + return loss.mean() + elif self.reduction == 'sum': + return loss.sum() + else: # 'none' + return loss + + +def smooth_BCE(eps=0.1): # https://github.com/ultralytics/yolov3/issues/238#issuecomment-598028441 + # return positive, negative label smoothing BCE targets + return 1.0 - 0.5 * eps, 0.5 * eps + + +class BCEBlurWithLogitsLoss(nn.Module): + # BCEwithLogitLoss() with reduced missing label effects. + def __init__(self, alpha=0.05): + super(BCEBlurWithLogitsLoss, self).__init__() + self.loss_fcn = nn.BCEWithLogitsLoss(reduction='none') # must be nn.BCEWithLogitsLoss() + self.alpha = alpha + + def forward(self, pred, true): + loss = self.loss_fcn(pred, true) + pred = torch.sigmoid(pred) # prob from logits + dx = pred - true # reduce only missing label effects + # dx = (pred - true).abs() # reduce missing label and false label effects + alpha_factor = 1 - torch.exp((dx - 1) / (self.alpha + 1e-4)) + loss *= alpha_factor + return loss.mean() + + +def compute_loss(p, targets, model): # predictions, targets, model + ft = torch.cuda.FloatTensor if p[0].is_cuda else torch.Tensor + lcls, lbox, lobj = ft([0]), ft([0]), ft([0]) + tcls, tbox, indices, anchors = build_targets(p, targets, model) # targets + h = model.hyp # hyperparameters + red = 'mean' # Loss reduction (sum or mean) + + # Define criteria + BCEcls = nn.BCEWithLogitsLoss(pos_weight=ft([h['cls_pw']]), reduction=red) + BCEobj = nn.BCEWithLogitsLoss(pos_weight=ft([h['obj_pw']]), reduction=red) + + # class label smoothing https://arxiv.org/pdf/1902.04103.pdf eqn 3 + cp, cn = smooth_BCE(eps=0.0) + + # focal loss + g = h['fl_gamma'] # focal loss gamma + if g > 0: + BCEcls, BCEobj = FocalLoss(BCEcls, g), FocalLoss(BCEobj, g) + + # per output + nt = 0 # targets + for i, pi in enumerate(p): # layer index, layer predictions + b, a, gj, gi = indices[i] # image, anchor, gridy, gridx + tobj = torch.zeros_like(pi[..., 0]) # target obj + + nb = b.shape[0] # number of targets + if nb: + nt += nb # cumulative targets + ps = pi[b, a, gj, gi] # prediction subset corresponding to targets + + # GIoU + pxy = ps[:, :2].sigmoid() * 2. - 0.5 + pwh = (ps[:, 2:4].sigmoid() * 2) ** 2 * anchors[i] + pbox = torch.cat((pxy, pwh), 1) # predicted box + giou = bbox_iou(pbox.t(), tbox[i], x1y1x2y2=False, GIoU=True) # giou(prediction, target) + lbox += (1.0 - giou).sum() if red == 'sum' else (1.0 - giou).mean() # giou loss + + # Obj + tobj[b, a, gj, gi] = (1.0 - model.gr) + model.gr * giou.detach().clamp(0).type(tobj.dtype) # giou ratio + + # Class + if model.nc > 1: # cls loss (only if multiple classes) + t = torch.full_like(ps[:, 5:], cn) # targets + t[range(nb), tcls[i]] = cp + lcls += BCEcls(ps[:, 5:], t) # BCE + + # Append targets to text file + # with open('targets.txt', 'a') as file: + # [file.write('%11.5g ' * 4 % tuple(x) + '\n') for x in torch.cat((txy[i], twh[i]), 1)] + + lobj += BCEobj(pi[..., 4], tobj) # obj loss + + lbox *= h['giou'] + lobj *= h['obj'] + lcls *= h['cls'] + bs = tobj.shape[0] # batch size + if red == 'sum': + g = 3.0 # loss gain + lobj *= g / bs + if nt: + lcls *= g / nt / model.nc + lbox *= g / nt + + loss = lbox + lobj + lcls + return loss * bs, torch.cat((lbox, lobj, lcls, loss)).detach() + + +def build_targets(p, targets, model): + # Build targets for compute_loss(), input targets(image,class,x,y,w,h) + det = model.module.model[-1] if type(model) in (nn.parallel.DataParallel, nn.parallel.DistributedDataParallel) \ + else model.model[-1] # Detect() module + na, nt = det.na, targets.shape[0] # number of anchors, targets + tcls, tbox, indices, anch = [], [], [], [] + gain = torch.ones(6, device=targets.device) # normalized to gridspace gain + off = torch.tensor([[1, 0], [0, 1], [-1, 0], [0, -1]], device=targets.device).float() # overlap offsets + at = torch.arange(na).view(na, 1).repeat(1, nt) # anchor tensor, same as .repeat_interleave(nt) + + style = 'rect4' + for i in range(det.nl): + anchors = det.anchors[i] + gain[2:] = torch.tensor(p[i].shape)[[3, 2, 3, 2]] # xyxy gain + + # Match targets to anchors + a, t, offsets = [], targets * gain, 0 + if nt: + r = t[None, :, 4:6] / anchors[:, None] # wh ratio + j = torch.max(r, 1. / r).max(2)[0] < model.hyp['anchor_t'] # compare + # j = wh_iou(anchors, t[:, 4:6]) > model.hyp['iou_t'] # iou(3,n) = wh_iou(anchors(3,2), gwh(n,2)) + a, t = at[j], t.repeat(na, 1, 1)[j] # filter + + # overlaps + gxy = t[:, 2:4] # grid xy + z = torch.zeros_like(gxy) + if style == 'rect2': + g = 0.2 # offset + j, k = ((gxy % 1. < g) & (gxy > 1.)).T + a, t = torch.cat((a, a[j], a[k]), 0), torch.cat((t, t[j], t[k]), 0) + offsets = torch.cat((z, z[j] + off[0], z[k] + off[1]), 0) * g + + elif style == 'rect4': + g = 0.5 # offset + j, k = ((gxy % 1. < g) & (gxy > 1.)).T + l, m = ((gxy % 1. > (1 - g)) & (gxy < (gain[[2, 3]] - 1.))).T + a, t = torch.cat((a, a[j], a[k], a[l], a[m]), 0), torch.cat((t, t[j], t[k], t[l], t[m]), 0) + offsets = torch.cat((z, z[j] + off[0], z[k] + off[1], z[l] + off[2], z[m] + off[3]), 0) * g + + # Define + b, c = t[:, :2].long().T # image, class + gxy = t[:, 2:4] # grid xy + gwh = t[:, 4:6] # grid wh + gij = (gxy - offsets).long() + gi, gj = gij.T # grid xy indices + + # Append + indices.append((b, a, gj, gi)) # image, anchor, grid indices + tbox.append(torch.cat((gxy - gij, gwh), 1)) # box + anch.append(anchors[a]) # anchors + tcls.append(c) # class + + return tcls, tbox, indices, anch + + +def non_max_suppression(prediction, conf_thres=0.1, iou_thres=0.6, fast=False, classes=None, agnostic=False): + """Performs Non-Maximum Suppression (NMS) on inference results + + Returns: + detections with shape: nx6 (x1, y1, x2, y2, conf, cls) + """ + if prediction.dtype is torch.float16: + prediction = prediction.float() # to FP32 + + nc = prediction[0].shape[1] - 5 # number of classes + xc = prediction[..., 4] > conf_thres # candidates + + # Settings + min_wh, max_wh = 2, 4096 # (pixels) minimum and maximum box width and height + max_det = 300 # maximum number of detections per image + time_limit = 10.0 # seconds to quit after + redundant = True # require redundant detections + fast |= conf_thres > 0.001 # fast mode + multi_label = nc > 1 # multiple labels per box (adds 0.5ms/img) + if fast: + merge = False + else: + merge = True # merge for best mAP (adds 0.5ms/img) + + t = time.time() + output = [None] * prediction.shape[0] + for xi, x in enumerate(prediction): # image index, image inference + # Apply constraints + # x[((x[..., 2:4] < min_wh) | (x[..., 2:4] > max_wh)).any(1), 4] = 0 # width-height + x = x[xc[xi]] # confidence + + # If none remain process next image + if not x.shape[0]: + continue + + # Compute conf + x[:, 5:] *= x[:, 4:5] # conf = obj_conf * cls_conf + + # Box (center x, center y, width, height) to (x1, y1, x2, y2) + box = xywh2xyxy(x[:, :4]) + + # Detections matrix nx6 (xyxy, conf, cls) + if multi_label: + i, j = (x[:, 5:] > conf_thres).nonzero().t() + x = torch.cat((box[i], x[i, j + 5, None], j[:, None].float()), 1) + else: # best class only + conf, j = x[:, 5:].max(1, keepdim=True) + x = torch.cat((box, conf, j.float()), 1)[conf.view(-1) > conf_thres] + + # Filter by class + if classes: + x = x[(x[:, 5:6] == torch.tensor(classes, device=x.device)).any(1)] + + # Apply finite constraint + # if not torch.isfinite(x).all(): + # x = x[torch.isfinite(x).all(1)] + + # If none remain process next image + n = x.shape[0] # number of boxes + if not n: + continue + + # Sort by confidence + # x = x[x[:, 4].argsort(descending=True)] + + # Batched NMS + c = x[:, 5:6] * (0 if agnostic else max_wh) # classes + boxes, scores = x[:, :4] + c, x[:, 4] # boxes (offset by class), scores + i = torchvision.ops.boxes.nms(boxes, scores, iou_thres) + if i.shape[0] > max_det: # limit detections + i = i[:max_det] + if merge and (1 < n < 3E3): # Merge NMS (boxes merged using weighted mean) + try: # update boxes as boxes(i,4) = weights(i,n) * boxes(n,4) + iou = box_iou(boxes[i], boxes) > iou_thres # iou matrix + weights = iou * scores[None] # box weights + x[i, :4] = torch.mm(weights, x[:, :4]).float() / weights.sum(1, keepdim=True) # merged boxes + if redundant: + i = i[iou.sum(1) > 1] # require redundancy + except: # possible CUDA error https://github.com/ultralytics/yolov3/issues/1139 + print(x, i, x.shape, i.shape) + pass + + output[xi] = x[i] + if (time.time() - t) > time_limit: + break # time limit exceeded + + return output + + +def strip_optimizer(f='weights/best.pt'): # from utils.utils import *; strip_optimizer() + # Strip optimizer from *.pt files for lighter files (reduced by 1/2 size) + x = torch.load(f, map_location=torch.device('cpu')) + x['optimizer'] = None + x['model'].half() # to FP16 + torch.save(x, f) + print('Optimizer stripped from %s' % f) + + +def create_backbone(f='weights/best.pt', s='weights/backbone.pt'): # from utils.utils import *; create_backbone() + # create backbone 's' from 'f' + device = torch.device('cpu') + x = torch.load(s, map_location=device) + + x['optimizer'] = None + x['training_results'] = None + x['epoch'] = -1 + x['model'].half() # to FP16 + for p in x['model'].parameters(): + p.requires_grad = True + torch.save(x, s) + print('%s modified for backbone use and saved as %s' % (f, s)) + + +def coco_class_count(path='../coco/labels/train2014/'): + # Histogram of occurrences per class + nc = 80 # number classes + x = np.zeros(nc, dtype='int32') + files = sorted(glob.glob('%s/*.*' % path)) + for i, file in enumerate(files): + labels = np.loadtxt(file, dtype=np.float32).reshape(-1, 5) + x += np.bincount(labels[:, 0].astype('int32'), minlength=nc) + print(i, len(files)) + + +def coco_only_people(path='../coco/labels/train2017/'): # from utils.utils import *; coco_only_people() + # Find images with only people + files = sorted(glob.glob('%s/*.*' % path)) + for i, file in enumerate(files): + labels = np.loadtxt(file, dtype=np.float32).reshape(-1, 5) + if all(labels[:, 0] == 0): + print(labels.shape[0], file) + + +def crop_images_random(path='../images/', scale=0.50): # from utils.utils import *; crop_images_random() + # crops images into random squares up to scale fraction + # WARNING: overwrites images! + for file in tqdm(sorted(glob.glob('%s/*.*' % path))): + img = cv2.imread(file) # BGR + if img is not None: + h, w = img.shape[:2] + + # create random mask + a = 30 # minimum size (pixels) + mask_h = random.randint(a, int(max(a, h * scale))) # mask height + mask_w = mask_h # mask width + + # box + xmin = max(0, random.randint(0, w) - mask_w // 2) + ymin = max(0, random.randint(0, h) - mask_h // 2) + xmax = min(w, xmin + mask_w) + ymax = min(h, ymin + mask_h) + + # apply random color mask + cv2.imwrite(file, img[ymin:ymax, xmin:xmax]) + + +def coco_single_class_labels(path='../coco/labels/train2014/', label_class=43): + # Makes single-class coco datasets. from utils.utils import *; coco_single_class_labels() + if os.path.exists('new/'): + shutil.rmtree('new/') # delete output folder + os.makedirs('new/') # make new output folder + os.makedirs('new/labels/') + os.makedirs('new/images/') + for file in tqdm(sorted(glob.glob('%s/*.*' % path))): + with open(file, 'r') as f: + labels = np.array([x.split() for x in f.read().splitlines()], dtype=np.float32) + i = labels[:, 0] == label_class + if any(i): + img_file = file.replace('labels', 'images').replace('txt', 'jpg') + labels[:, 0] = 0 # reset class to 0 + with open('new/images.txt', 'a') as f: # add image to dataset list + f.write(img_file + '\n') + with open('new/labels/' + Path(file).name, 'a') as f: # write label + for l in labels[i]: + f.write('%g %.6f %.6f %.6f %.6f\n' % tuple(l)) + shutil.copyfile(src=img_file, dst='new/images/' + Path(file).name.replace('txt', 'jpg')) # copy images + + +def kmean_anchors(path='./data/coco128.yaml', n=9, img_size=640, thr=4.0, gen=1000, verbose=True): + """ Creates kmeans-evolved anchors from training dataset + + Arguments: + path: path to dataset *.yaml, or a loaded dataset + n: number of anchors + img_size: image size used for training + thr: anchor-label wh ratio threshold hyperparameter hyp['anchor_t'] used for training, default=4.0 + gen: generations to evolve anchors using genetic algorithm + + Return: + k: kmeans evolved anchors + + Usage: + from utils.utils import *; _ = kmean_anchors() + """ + thr = 1. / thr + + def metric(k, wh): # compute metrics + r = wh[:, None] / k[None] + x = torch.min(r, 1. / r).min(2)[0] # ratio metric + # x = wh_iou(wh, torch.tensor(k)) # iou metric + return x, x.max(1)[0] # x, best_x + + def fitness(k): # mutation fitness + _, best = metric(torch.tensor(k, dtype=torch.float32), wh) + return (best * (best > thr).float()).mean() # fitness + + def print_results(k): + k = k[np.argsort(k.prod(1))] # sort small to large + x, best = metric(k, wh0) + bpr, aat = (best > thr).float().mean(), (x > thr).float().mean() * n # best possible recall, anch > thr + print('thr=%.2f: %.4f best possible recall, %.2f anchors past thr' % (thr, bpr, aat)) + print('n=%g, img_size=%s, metric_all=%.3f/%.3f-mean/best, past_thr=%.3f-mean: ' % + (n, img_size, x.mean(), best.mean(), x[x > thr].mean()), end='') + for i, x in enumerate(k): + print('%i,%i' % (round(x[0]), round(x[1])), end=', ' if i < len(k) - 1 else '\n') # use in *.cfg + return k + + if isinstance(path, str): # *.yaml file + with open(path) as f: + data_dict = yaml.load(f, Loader=yaml.FullLoader) # model dict + from utils.datasets import LoadImagesAndLabels + dataset = LoadImagesAndLabels(data_dict['train'], augment=True, rect=True) + else: + dataset = path # dataset + + # Get label wh + shapes = img_size * dataset.shapes / dataset.shapes.max(1, keepdims=True) + wh0 = np.concatenate([l[:, 3:5] * s for s, l in zip(shapes, dataset.labels)]) # wh + + # Filter + i = (wh0 < 4.0).any(1).sum() + if i: + print('WARNING: Extremely small objects found. ' + '%g of %g labels are < 4 pixels in width or height.' % (i, len(wh0))) + wh = wh0[(wh0 >= 4.0).any(1)] # filter > 2 pixels + + # Kmeans calculation + from scipy.cluster.vq import kmeans + print('Running kmeans for %g anchors on %g points...' % (n, len(wh))) + s = wh.std(0) # sigmas for whitening + k, dist = kmeans(wh / s, n, iter=30) # points, mean distance + k *= s + wh = torch.tensor(wh, dtype=torch.float32) # filtered + wh0 = torch.tensor(wh0, dtype=torch.float32) # unflitered + k = print_results(k) + + # Plot + # k, d = [None] * 20, [None] * 20 + # for i in tqdm(range(1, 21)): + # k[i-1], d[i-1] = kmeans(wh / s, i) # points, mean distance + # fig, ax = plt.subplots(1, 2, figsize=(14, 7)) + # ax = ax.ravel() + # ax[0].plot(np.arange(1, 21), np.array(d) ** 2, marker='.') + # fig, ax = plt.subplots(1, 2, figsize=(14, 7)) # plot wh + # ax[0].hist(wh[wh[:, 0]<100, 0],400) + # ax[1].hist(wh[wh[:, 1]<100, 1],400) + # fig.tight_layout() + # fig.savefig('wh.png', dpi=200) + + # Evolve + npr = np.random + f, sh, mp, s = fitness(k), k.shape, 0.9, 0.1 # fitness, generations, mutation prob, sigma + pbar = tqdm(range(gen), desc='Evolving anchors with Genetic Algorithm') # progress bar + for _ in pbar: + v = np.ones(sh) + while (v == 1).all(): # mutate until a change occurs (prevent duplicates) + v = ((npr.random(sh) < mp) * npr.random() * npr.randn(*sh) * s + 1).clip(0.3, 3.0) + kg = (k.copy() * v).clip(min=2.0) + fg = fitness(kg) + if fg > f: + f, k = fg, kg.copy() + pbar.desc = 'Evolving anchors with Genetic Algorithm: fitness = %.4f' % f + if verbose: + print_results(k) + + return print_results(k) + + +def print_mutation(hyp, results, bucket=''): + # Print mutation results to evolve.txt (for use with train.py --evolve) + a = '%10s' * len(hyp) % tuple(hyp.keys()) # hyperparam keys + b = '%10.3g' * len(hyp) % tuple(hyp.values()) # hyperparam values + c = '%10.4g' * len(results) % results # results (P, R, mAP, F1, test_loss) + print('\n%s\n%s\nEvolved fitness: %s\n' % (a, b, c)) + + if bucket: + os.system('gsutil cp gs://%s/evolve.txt .' % bucket) # download evolve.txt + + with open('evolve.txt', 'a') as f: # append result + f.write(c + b + '\n') + x = np.unique(np.loadtxt('evolve.txt', ndmin=2), axis=0) # load unique rows + np.savetxt('evolve.txt', x[np.argsort(-fitness(x))], '%10.3g') # save sort by fitness + + if bucket: + os.system('gsutil cp evolve.txt gs://%s' % bucket) # upload evolve.txt + + +def apply_classifier(x, model, img, im0): + # applies a second stage classifier to yolo outputs + im0 = [im0] if isinstance(im0, np.ndarray) else im0 + for i, d in enumerate(x): # per image + if d is not None and len(d): + d = d.clone() + + # Reshape and pad cutouts + b = xyxy2xywh(d[:, :4]) # boxes + b[:, 2:] = b[:, 2:].max(1)[0].unsqueeze(1) # rectangle to square + b[:, 2:] = b[:, 2:] * 1.3 + 30 # pad + d[:, :4] = xywh2xyxy(b).long() + + # Rescale boxes from img_size to im0 size + scale_coords(img.shape[2:], d[:, :4], im0[i].shape) + + # Classes + pred_cls1 = d[:, 5].long() + ims = [] + for j, a in enumerate(d): # per item + cutout = im0[i][int(a[1]):int(a[3]), int(a[0]):int(a[2])] + im = cv2.resize(cutout, (224, 224)) # BGR + # cv2.imwrite('test%i.jpg' % j, cutout) + + im = im[:, :, ::-1].transpose(2, 0, 1) # BGR to RGB, to 3x416x416 + im = np.ascontiguousarray(im, dtype=np.float32) # uint8 to float32 + im /= 255.0 # 0 - 255 to 0.0 - 1.0 + ims.append(im) + + pred_cls2 = model(torch.Tensor(ims).to(d.device)).argmax(1) # classifier prediction + x[i] = x[i][pred_cls1 == pred_cls2] # retain matching class detections + + return x + + +def fitness(x): + # Returns fitness (for use with results.txt or evolve.txt) + w = [0.0, 0.0, 0.1, 0.9] # weights for [P, R, mAP@0.5, mAP@0.5:0.95] + return (x[:, :4] * w).sum(1) + + +def output_to_target(output, width, height): + """ + Convert a YOLO model output to target format + [batch_id, class_id, x, y, w, h, conf] + """ + if isinstance(output, torch.Tensor): + output = output.cpu().numpy() + + targets = [] + for i, o in enumerate(output): + if o is not None: + for pred in o: + box = pred[:4] + w = (box[2] - box[0]) / width + h = (box[3] - box[1]) / height + x = box[0] / width + w / 2 + y = box[1] / height + h / 2 + conf = pred[4] + cls = int(pred[5]) + + targets.append([i, cls, x, y, w, h, conf]) + + return np.array(targets) + + +# Plotting functions --------------------------------------------------------------------------------------------------- +def butter_lowpass_filtfilt(data, cutoff=1500, fs=50000, order=5): + # https://stackoverflow.com/questions/28536191/how-to-filter-smooth-with-scipy-numpy + def butter_lowpass(cutoff, fs, order): + nyq = 0.5 * fs + normal_cutoff = cutoff / nyq + b, a = butter(order, normal_cutoff, btype='low', analog=False) + return b, a + + b, a = butter_lowpass(cutoff, fs, order=order) + return filtfilt(b, a, data) # forward-backward filter + + +def plot_one_box(x, img, color=None, label=None, line_thickness=None): + # Plots one bounding box on image img + tl = line_thickness or round(0.002 * (img.shape[0] + img.shape[1]) / 2) + 1 # line/font thickness + + color = [255, 0, 0] + c1, c2 = (int(x[0]), int(x[1])), (int(x[2]), int(x[3])) + cv2.rectangle(img, c1, c2, color, thickness=tl, lineType=cv2.LINE_AA) + if label: + tf = max(tl - 1, 1) # font thickness + t_size = cv2.getTextSize(label, 0, fontScale=tl / 3, thickness=tf)[0] + c2 = c1[0] + t_size[0], c1[1] - t_size[1] - 3 + cv2.rectangle(img, c1, c2, color, -1, cv2.LINE_AA) # filled + cv2.putText(img, label, (c1[0], c1[1] - 2), 0, tl / 3, [225, 255, 255], thickness=tf, lineType=cv2.LINE_AA) + +def plot_dots_on_people(x, img): + # Plotting centers of people with green dot. + thickness = -1; + color = [0, 255, 0] # green + center = ((int(x[2])+int(x[0]))//2,(int(x[3])+int(x[1]))//2) + radius = 10 + cv2.circle(img, center, radius, color, thickness) + +def distancing(people_coords, img, dist_thres_lim=(200,250)): + # Plot lines connecting people + already_red = dict() # dictionary to store if a plotted rectangle has already been labelled as high risk + centers = [] + for i in people_coords: + centers.append(((int(i[2])+int(i[0]))//2,(int(i[3])+int(i[1]))//2)) + for j in centers: + already_red[j] = 0 + x_combs = list(itertools.combinations(people_coords,2)) + radius = 10 + thickness = 5 + for x in x_combs: + xyxy1, xyxy2 = x[0],x[1] + cntr1 = ((int(xyxy1[2])+int(xyxy1[0]))//2,(int(xyxy1[3])+int(xyxy1[1]))//2) + cntr2 = ((int(xyxy2[2])+int(xyxy2[0]))//2,(int(xyxy2[3])+int(xyxy2[1]))//2) + dist = ((cntr2[0]-cntr1[0])**2 + (cntr2[1]-cntr1[1])**2)**0.5 + #print("---------------距离:{0}".format(dist)) + if dist > dist_thres_lim[0] and dist < dist_thres_lim[1]: + color = (0, 255, 255) + label = "Low Risk " + cv2.line(img, cntr1, cntr2, color, thickness) + if already_red[cntr1] == 0: + cv2.circle(img, cntr1, radius, color, -1) + if already_red[cntr2] == 0: + cv2.circle(img, cntr2, radius, color, -1) + # Plots one bounding box on image img + tl = round(0.002 * (img.shape[0] + img.shape[1]) / 2) + 1 # line/font thickness + for xy in x: + cntr = ((int(xy[2])+int(xy[0]))//2,(int(xy[3])+int(xy[1]))//2) + if already_red[cntr] == 0: + c1, c2 = (int(xy[0]), int(xy[1])), (int(xy[2]), int(xy[3])) + tf = max(tl - 1, 1) # font thickness + t_size = cv2.getTextSize(label, 0, fontScale=tl / 3, thickness=tf)[0] + c2 = c1[0] + t_size[0], c1[1] - t_size[1] - 3 + cv2.rectangle(img, c1, c2, color, thickness=tl, lineType=cv2.LINE_AA) + cv2.rectangle(img, c1, c2, color, -1, cv2.LINE_AA) # filled + cv2.putText(img, label, (c1[0], c1[1] - 2), 0, tl / 3, [225, 255, 255], thickness=tf, lineType=cv2.LINE_AA) + + elif dist < dist_thres_lim[0]: + color = (0, 0, 255) + label = "High Risk" + already_red[cntr1] = 1 + already_red[cntr2] = 1 + cv2.line(img, cntr1, cntr2, color, thickness) + cv2.circle(img, cntr1, radius, color, -1) + cv2.circle(img, cntr2, radius, color, -1) + # Plots one bounding box on image img + tl = round(0.002 * (img.shape[0] + img.shape[1]) / 2) + 1 # line/font thickness + for xy in x: + c1, c2 = (int(xy[0]), int(xy[1])), (int(xy[2]), int(xy[3])) + tf = max(tl - 1, 1) # font thickness + t_size = cv2.getTextSize(label, 0, fontScale=tl / 3, thickness=tf)[0] + c2 = c1[0] + t_size[0], c1[1] - t_size[1] - 3 + cv2.rectangle(img, c1, c2, color, thickness=tl, lineType=cv2.LINE_AA) + cv2.rectangle(img, c1, c2, color, -1, cv2.LINE_AA) # filled + cv2.putText(img, label, (c1[0], c1[1] - 2), 0, tl / 3, [225, 255, 255], thickness=tf, lineType=cv2.LINE_AA) + + + + + + + +def plot_wh_methods(): # from utils.utils import *; plot_wh_methods() + # Compares the two methods for width-height anchor multiplication + # https://github.com/ultralytics/yolov3/issues/168 + x = np.arange(-4.0, 4.0, .1) + ya = np.exp(x) + yb = torch.sigmoid(torch.from_numpy(x)).numpy() * 2 + + fig = plt.figure(figsize=(6, 3), dpi=150) + plt.plot(x, ya, '.-', label='yolo method') + plt.plot(x, yb ** 2, '.-', label='^2 power method') + plt.plot(x, yb ** 2.5, '.-', label='^2.5 power method') + plt.xlim(left=-4, right=4) + plt.ylim(bottom=0, top=6) + plt.xlabel('input') + plt.ylabel('output') + plt.legend() + fig.tight_layout() + fig.savefig('comparison.png', dpi=200) + + +def plot_images(images, targets, paths=None, fname='images.jpg', names=None, max_size=640, max_subplots=16): + tl = 3 # line thickness + tf = max(tl - 1, 1) # font thickness + if os.path.isfile(fname): # do not overwrite + return None + + if isinstance(images, torch.Tensor): + images = images.cpu().float().numpy() + + if isinstance(targets, torch.Tensor): + targets = targets.cpu().numpy() + + # un-normalise + if np.max(images[0]) <= 1: + images *= 255 + + bs, _, h, w = images.shape # batch size, _, height, width + bs = min(bs, max_subplots) # limit plot images + ns = np.ceil(bs ** 0.5) # number of subplots (square) + + # Check if we should resize + scale_factor = max_size / max(h, w) + if scale_factor < 1: + h = math.ceil(scale_factor * h) + w = math.ceil(scale_factor * w) + + # Empty array for output + mosaic = np.full((int(ns * h), int(ns * w), 3), 255, dtype=np.uint8) + + # Fix class - colour map + prop_cycle = plt.rcParams['axes.prop_cycle'] + # https://stackoverflow.com/questions/51350872/python-from-color-name-to-rgb + hex2rgb = lambda h: tuple(int(h[1 + i:1 + i + 2], 16) for i in (0, 2, 4)) + color_lut = [hex2rgb(h) for h in prop_cycle.by_key()['color']] + + for i, img in enumerate(images): + if i == max_subplots: # if last batch has fewer images than we expect + break + + block_x = int(w * (i // ns)) + block_y = int(h * (i % ns)) + + img = img.transpose(1, 2, 0) + if scale_factor < 1: + img = cv2.resize(img, (w, h)) + + mosaic[block_y:block_y + h, block_x:block_x + w, :] = img + if len(targets) > 0: + image_targets = targets[targets[:, 0] == i] + boxes = xywh2xyxy(image_targets[:, 2:6]).T + classes = image_targets[:, 1].astype('int') + gt = image_targets.shape[1] == 6 # ground truth if no conf column + conf = None if gt else image_targets[:, 6] # check for confidence presence (gt vs pred) + + boxes[[0, 2]] *= w + boxes[[0, 2]] += block_x + boxes[[1, 3]] *= h + boxes[[1, 3]] += block_y + for j, box in enumerate(boxes.T): + cls = int(classes[j]) + color = color_lut[cls % len(color_lut)] + cls = names[cls] if names else cls + if gt or conf[j] > 0.3: # 0.3 conf thresh + label = '%s' % cls if gt else '%s %.1f' % (cls, conf[j]) + plot_one_box(box, mosaic, label=label, color=color, line_thickness=tl) + + # Draw image filename labels + if paths is not None: + label = os.path.basename(paths[i])[:40] # trim to 40 char + t_size = cv2.getTextSize(label, 0, fontScale=tl / 3, thickness=tf)[0] + cv2.putText(mosaic, label, (block_x + 5, block_y + t_size[1] + 5), 0, tl / 3, [220, 220, 220], thickness=tf, + lineType=cv2.LINE_AA) + + # Image border + cv2.rectangle(mosaic, (block_x, block_y), (block_x + w, block_y + h), (255, 255, 255), thickness=3) + + if fname is not None: + mosaic = cv2.resize(mosaic, (int(ns * w * 0.5), int(ns * h * 0.5)), interpolation=cv2.INTER_AREA) + cv2.imwrite(fname, cv2.cvtColor(mosaic, cv2.COLOR_BGR2RGB)) + + return mosaic + + +def plot_lr_scheduler(optimizer, scheduler, epochs=300): + # Plot LR simulating training for full epochs + optimizer, scheduler = copy(optimizer), copy(scheduler) # do not modify originals + y = [] + for _ in range(epochs): + scheduler.step() + y.append(optimizer.param_groups[0]['lr']) + plt.plot(y, '.-', label='LR') + plt.xlabel('epoch') + plt.ylabel('LR') + plt.grid() + plt.xlim(0, epochs) + plt.ylim(0) + plt.tight_layout() + plt.savefig('LR.png', dpi=200) + + +def plot_test_txt(): # from utils.utils import *; plot_test() + # Plot test.txt histograms + x = np.loadtxt('test.txt', dtype=np.float32) + box = xyxy2xywh(x[:, :4]) + cx, cy = box[:, 0], box[:, 1] + + fig, ax = plt.subplots(1, 1, figsize=(6, 6), tight_layout=True) + ax.hist2d(cx, cy, bins=600, cmax=10, cmin=0) + ax.set_aspect('equal') + plt.savefig('hist2d.png', dpi=300) + + fig, ax = plt.subplots(1, 2, figsize=(12, 6), tight_layout=True) + ax[0].hist(cx, bins=600) + ax[1].hist(cy, bins=600) + plt.savefig('hist1d.png', dpi=200) + + +def plot_targets_txt(): # from utils.utils import *; plot_targets_txt() + # Plot targets.txt histograms + x = np.loadtxt('targets.txt', dtype=np.float32).T + s = ['x targets', 'y targets', 'width targets', 'height targets'] + fig, ax = plt.subplots(2, 2, figsize=(8, 8), tight_layout=True) + ax = ax.ravel() + for i in range(4): + ax[i].hist(x[i], bins=100, label='%.3g +/- %.3g' % (x[i].mean(), x[i].std())) + ax[i].legend() + ax[i].set_title(s[i]) + plt.savefig('targets.jpg', dpi=200) + + +def plot_study_txt(f='study.txt', x=None): # from utils.utils import *; plot_study_txt() + # Plot study.txt generated by test.py + fig, ax = plt.subplots(2, 4, figsize=(10, 6), tight_layout=True) + ax = ax.ravel() + + fig2, ax2 = plt.subplots(1, 1, figsize=(8, 4), tight_layout=True) + for f in ['coco_study/study_coco_yolov5%s.txt' % x for x in ['s', 'm', 'l', 'x']]: + y = np.loadtxt(f, dtype=np.float32, usecols=[0, 1, 2, 3, 7, 8, 9], ndmin=2).T + x = np.arange(y.shape[1]) if x is None else np.array(x) + s = ['P', 'R', 'mAP@.5', 'mAP@.5:.95', 't_inference (ms/img)', 't_NMS (ms/img)', 't_total (ms/img)'] + for i in range(7): + ax[i].plot(x, y[i], '.-', linewidth=2, markersize=8) + ax[i].set_title(s[i]) + + j = y[3].argmax() + 1 + ax2.plot(y[6, :j], y[3, :j] * 1E2, '.-', linewidth=2, markersize=8, + label=Path(f).stem.replace('study_coco_', '').replace('yolo', 'YOLO')) + + ax2.plot(1E3 / np.array([209, 140, 97, 58, 35, 18]), [33.5, 39.1, 42.5, 45.9, 49., 50.5], + 'k.-', linewidth=2, markersize=8, alpha=.25, label='EfficientDet') + ax2.set_xlim(0, 30) + ax2.set_ylim(25, 50) + ax2.set_xlabel('GPU Latency (ms)') + ax2.set_ylabel('COCO AP val') + ax2.legend(loc='lower right') + ax2.grid() + plt.savefig('study_mAP_latency.png', dpi=300) + plt.savefig(f.replace('.txt', '.png'), dpi=200) + + +def plot_labels(labels): + # plot dataset labels + c, b = labels[:, 0], labels[:, 1:].transpose() # classees, boxes + + def hist2d(x, y, n=100): + xedges, yedges = np.linspace(x.min(), x.max(), n), np.linspace(y.min(), y.max(), n) + hist, xedges, yedges = np.histogram2d(x, y, (xedges, yedges)) + xidx = np.clip(np.digitize(x, xedges) - 1, 0, hist.shape[0] - 1) + yidx = np.clip(np.digitize(y, yedges) - 1, 0, hist.shape[1] - 1) + return np.log(hist[xidx, yidx]) + + fig, ax = plt.subplots(2, 2, figsize=(8, 8), tight_layout=True) + ax = ax.ravel() + ax[0].hist(c, bins=int(c.max() + 1)) + ax[0].set_xlabel('classes') + ax[1].scatter(b[0], b[1], c=hist2d(b[0], b[1], 90), cmap='jet') + ax[1].set_xlabel('x') + ax[1].set_ylabel('y') + ax[2].scatter(b[2], b[3], c=hist2d(b[2], b[3], 90), cmap='jet') + ax[2].set_xlabel('width') + ax[2].set_ylabel('height') + plt.savefig('labels.png', dpi=200) + plt.close() + + +def plot_evolution_results(hyp): # from utils.utils import *; plot_evolution_results(hyp) + # Plot hyperparameter evolution results in evolve.txt + x = np.loadtxt('evolve.txt', ndmin=2) + f = fitness(x) + # weights = (f - f.min()) ** 2 # for weighted results + plt.figure(figsize=(12, 10), tight_layout=True) + matplotlib.rc('font', **{'size': 8}) + for i, (k, v) in enumerate(hyp.items()): + y = x[:, i + 7] + # mu = (y * weights).sum() / weights.sum() # best weighted result + mu = y[f.argmax()] # best single result + plt.subplot(4, 5, i + 1) + plt.plot(mu, f.max(), 'o', markersize=10) + plt.plot(y, f, '.') + plt.title('%s = %.3g' % (k, mu), fontdict={'size': 9}) # limit to 40 characters + print('%15s: %.3g' % (k, mu)) + plt.savefig('evolve.png', dpi=200) + + +def plot_results_overlay(start=0, stop=0): # from utils.utils import *; plot_results_overlay() + # Plot training 'results*.txt', overlaying train and val losses + s = ['train', 'train', 'train', 'Precision', 'mAP@0.5', 'val', 'val', 'val', 'Recall', 'mAP@0.5:0.95'] # legends + t = ['GIoU', 'Objectness', 'Classification', 'P-R', 'mAP-F1'] # titles + for f in sorted(glob.glob('results*.txt') + glob.glob('../../Downloads/results*.txt')): + results = np.loadtxt(f, usecols=[2, 3, 4, 8, 9, 12, 13, 14, 10, 11], ndmin=2).T + n = results.shape[1] # number of rows + x = range(start, min(stop, n) if stop else n) + fig, ax = plt.subplots(1, 5, figsize=(14, 3.5), tight_layout=True) + ax = ax.ravel() + for i in range(5): + for j in [i, i + 5]: + y = results[j, x] + ax[i].plot(x, y, marker='.', label=s[j]) + # y_smooth = butter_lowpass_filtfilt(y) + # ax[i].plot(x, np.gradient(y_smooth), marker='.', label=s[j]) + + ax[i].set_title(t[i]) + ax[i].legend() + ax[i].set_ylabel(f) if i == 0 else None # add filename + fig.savefig(f.replace('.txt', '.png'), dpi=200) + + +def plot_results(start=0, stop=0, bucket='', id=(), labels=()): # from utils.utils import *; plot_results() + # Plot training 'results*.txt' as seen in https://github.com/ultralytics/yolov5#reproduce-our-training + fig, ax = plt.subplots(2, 5, figsize=(12, 6)) + ax = ax.ravel() + s = ['GIoU', 'Objectness', 'Classification', 'Precision', 'Recall', + 'val GIoU', 'val Objectness', 'val Classification', 'mAP@0.5', 'mAP@0.5:0.95'] + if bucket: + os.system('rm -rf storage.googleapis.com') + files = ['https://storage.googleapis.com/%s/results%g.txt' % (bucket, x) for x in id] + else: + files = glob.glob('results*.txt') + glob.glob('../../Downloads/results*.txt') + for fi, f in enumerate(files): + try: + results = np.loadtxt(f, usecols=[2, 3, 4, 8, 9, 12, 13, 14, 10, 11], ndmin=2).T + n = results.shape[1] # number of rows + x = range(start, min(stop, n) if stop else n) + for i in range(10): + y = results[i, x] + if i in [0, 1, 2, 5, 6, 7]: + y[y == 0] = np.nan # dont show zero loss values + # y /= y[0] # normalize + label = labels[fi] if len(labels) else Path(f).stem + ax[i].plot(x, y, marker='.', label=label, linewidth=2, markersize=8) + ax[i].set_title(s[i]) + # if i in [5, 6, 7]: # share train and val loss y axes + # ax[i].get_shared_y_axes().join(ax[i], ax[i - 5]) + except: + print('Warning: Plotting error for %s, skipping file' % f) + + fig.tight_layout() + ax[1].legend() + fig.savefig('results.png', dpi=200) diff --git a/weights/best.pt b/weights/best.pt new file mode 100644 index 0000000..32e0083 Binary files /dev/null and b/weights/best.pt differ diff --git a/weights/best1.pt b/weights/best1.pt new file mode 100644 index 0000000..3968d54 Binary files /dev/null and b/weights/best1.pt differ diff --git a/weights/download_weights.sh b/weights/download_weights.sh new file mode 100644 index 0000000..206b700 --- /dev/null +++ b/weights/download_weights.sh @@ -0,0 +1,10 @@ +#!/bin/bash +# Download common models + +python -c " +from utils.google_utils import *; +attempt_download('weights/yolov5s.pt'); +attempt_download('weights/yolov5m.pt'); +attempt_download('weights/yolov5l.pt'); +attempt_download('weights/yolov5x.pt') +" diff --git a/weights/yolov5s.pt b/weights/yolov5s.pt new file mode 100644 index 0000000..99e93f4 Binary files /dev/null and b/weights/yolov5s.pt differ diff --git a/yolo_mindspore/README.md b/yolo_mindspore/README.md new file mode 100644 index 0000000..fc482e4 --- /dev/null +++ b/yolo_mindspore/README.md @@ -0,0 +1,408 @@ +# Contents + +- [Contents](#contents) +- [YOLOv5 Description](#YOLOv5-description) +- [Model Architecture](#model-architecture) +- [Dataset](#dataset) +- [Quick Start](#quick-start) +- [Script Description](#script-description) + - [Script and Sample Code](#script-and-sample-code) + - [Script Parameters](#script-parameters) + - [Training Process](#training-process) + - [Training](#training) + - [Distributed Training](#distributed-training) + - [Inference Process](#inference-process) + - [Export MindIR](#export-mindir) + - [Infer on Ascend310](#infer-on-ascend310) + - [result](#result) + - [Export ONNX](#export-onnx) + - [Run ONNX evaluation](#run-onnx-evaluation) + - [result](#result) +- [Model Description](#model-description) +- [Performance](#performance) + - [Evaluation Performance](#evaluation-performance) + - [Inference Performance](#inference-performance) + - [Transfer Learning](#transfer-learning) +- [Description of Random Situation](#description-of-random-situation) +- [ModelZoo Homepage](#modelzoo-homepage) + +# [YOLOv5 Description](#contents) + +Published in April 2020, YOLOv5 achieved state of the art performance on the COCO dataset for object detection. It is an important improvement of YoloV3, the implementation of a new architecture in the **Backbone** and the modifications in the **Neck** have improved the **mAP**(mean Average Precision) by **10%** and the number of **FPS**(Frame per Second) by **12%**. + +# [Model Architecture](#contents) + +The YOLOv5 network is mainly composed of CSP and Focus as a backbone, spatial pyramid pooling(SPP) additional module, PANet path-aggregation neck and YOLOv3 head. [CSP](https://arxiv.org/abs/1911.11929) is a novel backbone that can enhance the learning capability of CNN. The [spatial pyramid pooling](https://arxiv.org/abs/1406.4729) block is added over CSP to increase the receptive field and separate out the most significant context features. Instead of Feature pyramid networks (FPN) for object detection used in YOLOv3, the PANet is used as the method for parameter aggregation for different detector levels. To be more specifical, CSPDarknet53 contains 5 CSP modules which use the convolution **C** with kernel size k=3x3, stride s = 2x2; Within the PANet and SPP, **1x1, 5x5, 9x9, 13x13 max poolings are applied. + +# [Dataset](#contents) + +Dataset used: [COCO2017]() + +Note that you can run the scripts with **COCO2017 **or any other datasets with the same format as MS COCO Annotation. But we do suggest user to use MS COCO dataset to experience our model. + +# [Quick Start](#contents) + +After installing MindSpore via the official website, you can start training and evaluation as follows: + +```bash +#run training example(1p) on Ascend/GPU by python command +python train.py \ + --device_target="Ascend" \ # Ascend or GPU + --data_dir=xxx/dataset \ + --is_distributed=0 \ + --yolov5_version='yolov5s' \ + --lr=0.01 \ + --max_epoch=320 \ + --warmup_epochs=4 > log.txt 2>&1 & +``` + +```bash +# run 1p by shell script, please change `device_target` in config file to run on Ascend/GPU, and change `T_max`, `max_epoch`, `warmup_epochs` refer to contents of notes +bash run_standalone_train.sh [DATASET_PATH] + +# For Ascend device, distributed training example(8p) by shell script +bash run_distribute_train.sh [DATASET_PATH] [RANK_TABLE_FILE] + +# For GPU device, distributed training example(8p) by shell script +bash run_distribute_train_gpu.sh [DATASET_PATH] [RANK_SIZE] +``` + +```bash +# run evaluation on Ascend/GPU by python command +python eval.py \ + --device_target="Ascend" \ # Ascend or GPU + --data_dir=xxx/dataset \ + --yolov5_version='yolov5s' \ + --pretrained="***/*.ckpt" \ + --eval_shape=640 > log.txt 2>&1 & +``` + +```bash +# run evaluation by shell script, please change `device_target` in config file to run on Ascend/GPU +bash run_eval.sh [DATASET_PATH] [CHECKPOINT_PATH] +``` + +Note the default_config.yaml is the default parameters for yolov5s on 8p. The `batchsize` and `lr` are different on Ascend and GPU, see the settings in `scripts/run_distribute_train.sh` or `scripts/run_distribute_train_gpu.sh`. + +# [Script Description](#contents) + +## [Script and Sample Code](#contents) + +```text +├── model_zoo + ├── README.md // descriptions about all the models + ├── yolov5 + ├── README.md // descriptions about yolov5 + ├── scripts + │ ├──docker_start.sh // shell script for docker start + │ ├──run_distribute_train.sh // launch distributed training(8p) in ascend + │ ├──run_distribute_train_gpu.sh // launch distributed training(8p) in GPU + │ ├──run_standalone_train.sh // launch 1p training + │ ├──run_infer_310.sh // shell script for evaluation on 310 + │ ├──run_eval.sh // shell script for evaluation + │ ├──run_eval_onnx.sh // shell script for onnx evaluation + ├──model_utils + │ ├──config.py // getting config parameters + │ ├──device_adapter.py // getting device info + │ ├──local_adapter.py // getting device info + │ ├──moxing_adapter.py // Decorator + ├── src + │ ├──backbone.py // backbone of network + │ ├──distributed_sampler.py // iterator of dataset + │ ├──initializer.py // initializer of parameters + │ ├──logger.py // log function + │ ├──loss.py // loss function + │ ├──lr_scheduler.py // generate learning rate + │ ├──transforms.py // Preprocess data + │ ├──util.py // util function + │ ├──yolo.py // yolov5 network + │ ├──yolo_dataset.py // create dataset for YOLOV5 + ├── default_config.yaml // parameter configuration(yolov5s 8p) + ├── train.py // training script + ├── eval.py // evaluation script + ├── eval_onnx.py // ONNX evaluation script + ├── export.py // export script +``` + +## [Script Parameters](#contents) + +```text +Major parameters in train.py are: + +optional arguments: + + --device_target device where the code will be implemented: "Ascend", default is "Ascend" + --data_dir Train dataset directory. + --per_batch_size Batch size for Training. Default: 32(1p) 16(Ascend 8p) 32(GPU 8p). + --resume_yolov5 The ckpt file of YOLOv5, which used to fine tune.Default: "" + --lr_scheduler Learning rate scheduler, options: exponential,cosine_annealing. + Default: cosine_annealing + --lr Learning rate. Default: 0.01(1p) 0.02(Ascend 8p) 0.025(GPU 8p) + --lr_epochs Epoch of changing of lr changing, split with ",". Default: '220,250' + --lr_gamma Decrease lr by a factor of exponential lr_scheduler. Default: 0.1 + --eta_min Eta_min in cosine_annealing scheduler. Default: 0. + --t_max T-max in cosine_annealing scheduler. Default: 300(8p) + --max_epoch Max epoch num to train the model. Default: 300(8p) + --warmup_epochs Warmup epochs. Default: 20(8p) + --weight_decay Weight decay factor. Default: 0.0005 + --momentum Momentum. Default: 0.9 + --loss_scale Static loss scale. Default: 64 + --label_smooth Whether to use label smooth in CE. Default:0 + --label_smooth_factor Smooth strength of original one-hot. Default: 0.1 + --log_interval Logging interval steps. Default: 100 + --ckpt_path Checkpoint save location. Default: outputs/ + --is_distributed Distribute train or not, 1 for yes, 0 for no. Default: 0 + --rank Local rank of distributed. Default: 0 + --group_size World size of device. Default: 1 + --need_profiler Whether use profiler. 0 for no, 1 for yes. Default: 0 + --training_shape Fix training shape. Default: "" + --resize_rate Resize rate for multi-scale training. Default: 10 + --bind_cpu Whether bind cpu when distributed training. Default: True + --device_num Device numbers per server. Default: 8 +``` + +## [Training Process](#contents) + +### Training + +For Ascend device, standalone training can be started like this: + +```shell +#run training example(1p) by python command +python train.py \ + --data_dir=xxx/dataset \ + --yolov5_version='yolov5s' \ + --is_distributed=0 \ + --lr=0.01 \ + --T_max=320 + --max_epoch=320 \ + --warmup_epochs=4 \ + --per_batch_size=32 \ + --lr_scheduler=cosine_annealing > log.txt 2>&1 & +``` + +You should fine tune the params when run training 1p on GPU + +The python command above will run in the background, you can view the results through the file `log.txt`. + +After training, you'll get some checkpoint files under the **outputs** folder by default. The loss value will be achieved as follows: + +```text +# grep "loss:" log.txt +2021-08-06 15:30:15,798:INFO:epoch[0], iter[600], loss:296.308071, fps:44.44 imgs/sec, lr:0.00010661844862625003 +2021-08-06 15:31:21,119:INFO:epoch[0], iter[700], loss:276.071959, fps:48.99 imgs/sec, lr:0.00012435863027349114 +2021-08-06 15:32:26,185:INFO:epoch[0], iter[800], loss:266.955208, fps:49.18 imgs/sec, lr:0.00014209879736881703 +2021-08-06 15:33:30,507:INFO:epoch[0], iter[900], loss:252.610914, fps:49.75 imgs/sec, lr:0.00015983897901605815 +2021-08-06 15:34:42,176:INFO:epoch[0], iter[1000], loss:243.106683, fps:44.65 imgs/sec, lr:0.00017757914611138403 +2021-08-06 15:35:47,429:INFO:epoch[0], iter[1100], loss:240.498834, fps:49.04 imgs/sec, lr:0.00019531932775862515 +2021-08-06 15:36:48,945:INFO:epoch[0], iter[1200], loss:245.711473, fps:52.02 imgs/sec, lr:0.00021305949485395104 +2021-08-06 15:37:51,293:INFO:epoch[0], iter[1300], loss:231.388255, fps:51.33 imgs/sec, lr:0.00023079967650119215 +2021-08-06 15:38:55,680:INFO:epoch[0], iter[1400], loss:238.904242, fps:49.70 imgs/sec, lr:0.00024853984359651804 +2021-08-06 15:39:57,419:INFO:epoch[0], iter[1500], loss:232.161600, fps:51.83 imgs/sec, lr:0.00026628002524375916 +2021-08-06 15:41:03,808:INFO:epoch[0], iter[1600], loss:227.844698, fps:48.20 imgs/sec, lr:0.00028402020689100027 +2021-08-06 15:42:06,155:INFO:epoch[0], iter[1700], loss:226.668858, fps:51.33 imgs/sec, lr:0.00030176035943441093 +... +``` + +### Distributed Training + +Distributed training example(8p) by shell script: + +```bash +# For Ascend device, distributed training example(8p) by shell script +bash run_distribute_train.sh [DATASET_PATH] [RANK_TABLE_FILE] + +# For GPU device, distributed training example(8p) by shell script +bash run_distribute_train_gpu.sh [DATASET_PATH] [RANK_SIZE] +``` + +The above shell script will run distribute training in the background. You can view the results through the file train_parallel[X]/log.txt(Ascend) or distribute_train/nohup.out(GPU). The loss value will be achieved as follows: + +```text +# distribute training result(8p, dynamic shape) +... +2021-08-05 16:01:34,116:INFO:epoch[0], iter[200], loss:415.453676, fps:580.07 imgs/sec, lr:0.0002742903889156878 +2021-08-05 16:01:57,588:INFO:epoch[0], iter[300], loss:273.358383, fps:545.96 imgs/sec, lr:0.00041075327317230403 +2021-08-05 16:02:26,247:INFO:epoch[0], iter[400], loss:244.621502, fps:446.64 imgs/sec, lr:0.0005472161574289203 +2021-08-05 16:02:55,532:INFO:epoch[0], iter[500], loss:234.524876, fps:437.10 imgs/sec, lr:0.000683679012581706 +2021-08-05 16:03:25,046:INFO:epoch[0], iter[600], loss:235.185213, fps:434.08 imgs/sec, lr:0.0008201419259421527 +2021-08-05 16:03:54,585:INFO:epoch[0], iter[700], loss:228.878598, fps:433.48 imgs/sec, lr:0.0009566047810949385 +2021-08-05 16:04:23,932:INFO:epoch[0], iter[800], loss:219.259134, fps:436.29 imgs/sec, lr:0.0010930676944553852 +2021-08-05 16:04:52,707:INFO:epoch[0], iter[900], loss:225.741833, fps:444.84 imgs/sec, lr:0.001229530549608171 +2021-08-05 16:05:21,872:INFO:epoch[1], iter[1000], loss:218.811336, fps:438.91 imgs/sec, lr:0.0013659934047609568 +2021-08-05 16:05:51,216:INFO:epoch[1], iter[1100], loss:219.491889, fps:436.50 imgs/sec, lr:0.0015024563763290644 +2021-08-05 16:06:20,546:INFO:epoch[1], iter[1200], loss:219.895906, fps:436.57 imgs/sec, lr:0.0016389192314818501 +2021-08-05 16:06:49,521:INFO:epoch[1], iter[1300], loss:218.516680, fps:441.79 imgs/sec, lr:0.001775382086634636 +2021-08-05 16:07:18,303:INFO:epoch[1], iter[1400], loss:209.922935, fps:444.79 imgs/sec, lr:0.0019118449417874217 +2021-08-05 16:07:47,702:INFO:epoch[1], iter[1500], loss:210.997816, fps:435.60 imgs/sec, lr:0.0020483077969402075 +2021-08-05 16:08:16,482:INFO:epoch[1], iter[1600], loss:210.678421, fps:444.88 imgs/sec, lr:0.002184770768508315 +2021-08-05 16:08:45,568:INFO:epoch[1], iter[1700], loss:203.285874, fps:440.07 imgs/sec, lr:0.0023212337400764227 +2021-08-05 16:09:13,947:INFO:epoch[1], iter[1800], loss:203.014775, fps:451.11 imgs/sec, lr:0.0024576964788138866 +2021-08-05 16:09:42,954:INFO:epoch[2], iter[1900], loss:194.683969, fps:441.28 imgs/sec, lr:0.0025941594503819942 +... +``` + +## [Evaluation Process](#contents) + +### Evaluation + +Before running the command below, please check the checkpoint path used for evaluation. The file **yolov5.ckpt** used in the follow script is the last saved checkpoint file, but we renamed it to "yolov5.ckpt". + +```shell +# run evaluation by python command +python eval.py \ + --data_dir=xxx/dataset \ + --pretrained=xxx/yolov5.ckpt \ + --eval_shape=640 > log.txt 2>&1 & +OR +# run evaluation by shell script +bash run_eval.sh [DATASET_PATH] [CHECKPOINT_PATH] +``` + +The above python command will run in the background. You can view the results through the file "log.txt". The mAP of the test dataset will be as follows: + +```text +# log.txt +=============coco eval reulst========= +Average Precision (AP) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.369 +Average Precision (AP) @[ IoU=0.50 | area= all | maxDets=100 ] = 0.573 +Average Precision (AP) @[ IoU=0.75 | area= all | maxDets=100 ] = 0.395 +Average Precision (AP) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.218 +Average Precision (AP) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.418 +Average Precision (AP) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.482 +Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 1 ] = 0.298 +Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 10 ] = 0.501 +Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.557 +Average Recall (AR) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.395 +Average Recall (AR) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.619 +Average Recall (AR) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.677 +2020-12-21 17:16:40,322:INFO:testing cost time 0.35h +``` + +## Inference Process + +### [Export MindIR](#contents) + +```shell +python export.py --ckpt_file [CKPT_PATH] --file_name [FILE_NAME] --file_format [FILE_FORMAT] +``` + +The ckpt_file parameter is required, +`file_format` should be in ["AIR", "MINDIR"] + +### Infer on Ascend310 + +Before performing inference, the mindir file must be exported by `export.py` script. We only provide an example of inference using MINDIR model. +Current batch_Size can only be set to 1. + +```shell +# Ascend310 inference +bash run_infer_310.sh [MINDIR_PATH] [DATA_PATH] [ANN_FILE] [DVPP] [DEVICE_ID] +``` + +- `DVPP` is mandatory, and must choose from ["DVPP", "CPU"], it's case-insensitive. The DVPP hardware restricts width 16-alignment and height even-alignment. Therefore, the network needs to use the CPU operator to process images. +- `DATA_PATH` is mandatory, path of the dataset containing images. +- `ANN_FILE` is mandatory, path to annotation file. +- `DEVICE_ID` is optional, default value is 0. + +### result + +Inference result is saved in current path, you can find result like this in acc.log file. + +```text +Average Precision (AP) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.369 +Average Precision (AP) @[ IoU=0.50 | area= all | maxDets=100 ] = 0.573 +Average Precision (AP) @[ IoU=0.75 | area= all | maxDets=100 ] = 0.395 +Average Precision (AP) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.218 +Average Precision (AP) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.418 +Average Precision (AP) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.482 +Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 1 ] = 0.298 +Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 10 ] = 0.501 +Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.557 +Average Recall (AR) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.395 +Average Recall (AR) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.619 +Average Recall (AR) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.677 +``` + +### [Export ONNX](#contents) + +- Export your model to ONNX: + + ```shell + python export.py --ckpt_file /path/to/yolov5.ckpt --file_name /path/to/yolov5.onnx --file_format ONNX + ``` + +### Run ONNX evaluation + +- Run ONNX evaluation from yolov5 directory: + + ```shell + bash scripts/run_eval_onnx.sh [] + ``` + +### result + +- You can view the results through the file eval.log. The mAP of the validation dataset will be as follows: + + ```text + =============coco eval result========= + Average Precision (AP) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.366 + Average Precision (AP) @[ IoU=0.50 | area= all | maxDets=100 ] = 0.569 + Average Precision (AP) @[ IoU=0.75 | area= all | maxDets=100 ] = 0.397 + Average Precision (AP) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.213 + Average Precision (AP) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.415 + Average Precision (AP) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.474 + Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 1 ] = 0.299 + Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 10 ] = 0.501 + Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.557 + Average Recall (AR) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.399 + Average Recall (AR) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.611 + Average Recall (AR) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.677 + ``` + +# [Model Description](#contents) + +## [Performance](#contents) + +### Evaluation Performance + +YOLOv5 on 118K images(The annotation and data format must be the same as coco2017) + +| Parameters | YOLOv5s | YOLOv5s | +| -------------------------- | ------------------------------------------------------------ | ------------------------------------------------------------ | +| Resource | Ascend 910 ;CPU 2.60GHz,192cores; Memory, 755G | GPU NV SMX2 V100-32G | +| uploaded Date | 7/12/2021 (month/day/year) | 9/15/2021 (month/day/year) | +| MindSpore Version | 1.2.0 | 1.3.0 | +| Dataset | 118K images | 118K images | +| Training Parameters | epoch=300, batch_size=8, lr=0.02,momentum=0.9,warmup_epoch=20| epoch=300, batch_size=32, lr=0.025, warmup_epoch=20, 8p | +| Optimizer | Momentum | Momentum | +| Loss Function | Sigmoid Cross Entropy with logits, Giou Loss | Sigmoid Cross Entropy with logits, Giou Loss | +| outputs | boxes and label | boxes and label | +| Loss | 111.970097 | 85 | +| Speed | 8p about 450 FPS | 8p about 290 FPS | +| Total time | 8p 21h28min | 8p 35h | +| Checkpoint for Fine tuning | 53.62M (.ckpt file) | 58.87M (.ckpt file) | +| Scripts | https://gitee.com/mindspore/models/tree/master/official/cv/yolov5 | https://gitee.com/mindspore/models/tree/master/official/cv/yolov5 | + +### Inference Performance + +| Parameters | YOLOv5s | YOLOv5s | +| ------------------- | -----------------------------------------------| ---------------------------------------------| +| Resource | Ascend 910 ;CPU 2.60GHz,192cores; Memory, 755G | GPU NV SMX2 V100-32G | +| Uploaded Date | 7/12/2021 (month/day/year) | 9/15/2021 (month/day/year) | +| MindSpore Version | 1.2.0 | 1.3.0 | +| Dataset | 20K images | 20K images | +| batch_size | 1 | 1 | +| outputs | box position and sorces, and probability | box position and sorces, and probability | +| Accuracy | mAP >= 36.7%(shape=640) | mAP >= 36.7%(shape=640) | +| Model for inference | 56.67M (.ckpt file) | 58.87M (.ckpt file) | + +### Transfer Learning + +# [Description of Random Situation](#contents) + +In dataset.py, we set the seed inside “create_dataset" function. We also use random seed in train.py. + +# [ModelZoo Homepage](#contents) + + Please check the official [homepage](https://gitee.com/mindspore/models). diff --git a/yolov5/ascend310_infer/CMakeLists.txt b/yolo_mindspore/ascend310_infer/CMakeLists.txt similarity index 100% rename from yolov5/ascend310_infer/CMakeLists.txt rename to yolo_mindspore/ascend310_infer/CMakeLists.txt diff --git a/yolov5/ascend310_infer/build.sh b/yolo_mindspore/ascend310_infer/build.sh similarity index 100% rename from yolov5/ascend310_infer/build.sh rename to yolo_mindspore/ascend310_infer/build.sh diff --git a/yolov5/ascend310_infer/inc/utils.h b/yolo_mindspore/ascend310_infer/inc/utils.h similarity index 100% rename from yolov5/ascend310_infer/inc/utils.h rename to yolo_mindspore/ascend310_infer/inc/utils.h diff --git a/yolov5/ascend310_infer/src/main.cc b/yolo_mindspore/ascend310_infer/src/main.cc similarity index 100% rename from yolov5/ascend310_infer/src/main.cc rename to yolo_mindspore/ascend310_infer/src/main.cc diff --git a/yolov5/ascend310_infer/src/utils.cc b/yolo_mindspore/ascend310_infer/src/utils.cc similarity index 100% rename from yolov5/ascend310_infer/src/utils.cc rename to yolo_mindspore/ascend310_infer/src/utils.cc diff --git a/yolo_mindspore/coco/annotations.json b/yolo_mindspore/coco/annotations.json new file mode 100644 index 0000000..1985f61 --- /dev/null +++ b/yolo_mindspore/coco/annotations.json @@ -0,0 +1,17921 @@ +{ + "licenses": [ + { + "name": "", + "id": 0, + "url": "" + } + ], + "info": { + "contributor": "", + "date_created": "", + "description": "", + "url": "", + "version": "", + "year": "" + }, + "categories": [ + { + "id": 0, + "name": "with_mask", + "supercategory": "" + }, + { + "id": 1, + "name": "without_mask", + "supercategory": "" + } + ], + "images": [ + { + "id": 1, + "width": 960, + "height": 540, + "file_name": "0000.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 2, + "width": 640, + "height": 480, + "file_name": "00000.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 3, + "width": 960, + "height": 540, + "file_name": "0001.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 4, + "width": 1024, + "height": 1024, + "file_name": "00010.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 5, + "width": 960, + "height": 540, + "file_name": "0003.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 6, + "width": 1024, + "height": 1024, + "file_name": "00030.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 7, + "width": 960, + "height": 540, + "file_name": "0004.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 8, + "width": 960, + "height": 540, + "file_name": "0006.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 9, + "width": 640, + "height": 480, + "file_name": "00060.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 10, + "width": 960, + "height": 540, + "file_name": "0007.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 11, + "width": 334, + "height": 500, + "file_name": "00070.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 12, + "width": 960, + "height": 540, + "file_name": "0009.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 13, + "width": 960, + "height": 540, + "file_name": "0010.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 14, + "width": 1024, + "height": 1463, + "file_name": "00100.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 15, + "width": 1024, + "height": 810, + "file_name": "00130.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 16, + "width": 960, + "height": 540, + "file_name": "0015.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 17, + "width": 960, + "height": 540, + "file_name": "0016.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 18, + "width": 960, + "height": 540, + "file_name": "0017.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 19, + "width": 960, + "height": 540, + "file_name": "0018.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 20, + "width": 960, + "height": 540, + "file_name": "0021.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 21, + "width": 960, + "height": 540, + "file_name": "0023.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 22, + "width": 960, + "height": 540, + "file_name": "0025.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 23, + "width": 960, + "height": 540, + "file_name": "0026.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 24, + "width": 960, + "height": 540, + "file_name": "0027.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 25, + "width": 960, + "height": 540, + "file_name": "0029.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 26, + "width": 960, + "height": 540, + "file_name": "0032.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 27, + "width": 960, + "height": 540, + "file_name": "0033.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 28, + "width": 960, + "height": 540, + "file_name": "0034.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 29, + "width": 960, + "height": 540, + "file_name": "0037.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 30, + "width": 960, + "height": 540, + "file_name": "0038.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 31, + "width": 960, + "height": 540, + "file_name": "0039.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 32, + "width": 960, + "height": 540, + "file_name": "0041.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 33, + "width": 960, + "height": 540, + "file_name": "0042.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 34, + "width": 960, + "height": 540, + "file_name": "0045.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 35, + "width": 960, + "height": 540, + "file_name": "0047.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 36, + "width": 960, + "height": 540, + "file_name": "0051.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 37, + "width": 960, + "height": 540, + "file_name": "0054.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 38, + "width": 960, + "height": 540, + "file_name": "00550.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 39, + "width": 375, + "height": 500, + "file_name": "00570.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 40, + "width": 960, + "height": 540, + "file_name": "0058.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 41, + "width": 960, + "height": 540, + "file_name": "0059.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 42, + "width": 1024, + "height": 768, + "file_name": "00590.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 43, + "width": 960, + "height": 540, + "file_name": "0060.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 44, + "width": 1024, + "height": 683, + "file_name": "00600.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 45, + "width": 1024, + "height": 1532, + "file_name": "00620.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 46, + "width": 960, + "height": 540, + "file_name": "0064.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 47, + "width": 1024, + "height": 768, + "file_name": "00640.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 48, + "width": 960, + "height": 540, + "file_name": "0065.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 49, + "width": 1024, + "height": 576, + "file_name": "00660.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 50, + "width": 960, + "height": 540, + "file_name": "0067.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 51, + "width": 960, + "height": 540, + "file_name": "0069.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 52, + "width": 1024, + "height": 1057, + "file_name": "00690.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 53, + "width": 640, + "height": 480, + "file_name": "00700.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 54, + "width": 960, + "height": 540, + "file_name": "0071.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 55, + "width": 1024, + "height": 576, + "file_name": "00710.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 56, + "width": 960, + "height": 540, + "file_name": "0073.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 57, + "width": 1024, + "height": 819, + "file_name": "00730.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 58, + "width": 1024, + "height": 736, + "file_name": "00740.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 59, + "width": 960, + "height": 540, + "file_name": "0075.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 60, + "width": 960, + "height": 540, + "file_name": "0076.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 61, + "width": 960, + "height": 540, + "file_name": "0078.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 62, + "width": 640, + "height": 480, + "file_name": "00780.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 63, + "width": 960, + "height": 540, + "file_name": "0081.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 64, + "width": 375, + "height": 500, + "file_name": "00820.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 65, + "width": 960, + "height": 540, + "file_name": "0083.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 66, + "width": 960, + "height": 540, + "file_name": "0084.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 67, + "width": 1024, + "height": 1392, + "file_name": "00850.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 68, + "width": 960, + "height": 540, + "file_name": "0086.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 69, + "width": 1024, + "height": 673, + "file_name": "00860.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 70, + "width": 960, + "height": 540, + "file_name": "0092.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 71, + "width": 640, + "height": 480, + "file_name": "00920.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 72, + "width": 960, + "height": 540, + "file_name": "0093.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 73, + "width": 1024, + "height": 1024, + "file_name": "00940.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 74, + "width": 1024, + "height": 1019, + "file_name": "00960.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 75, + "width": 640, + "height": 480, + "file_name": "00970.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 76, + "width": 960, + "height": 540, + "file_name": "0098.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 77, + "width": 1024, + "height": 839, + "file_name": "00990.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 78, + "width": 640, + "height": 480, + "file_name": "01000.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 79, + "width": 960, + "height": 540, + "file_name": "0101.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 80, + "width": 960, + "height": 540, + "file_name": "01020.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 81, + "width": 640, + "height": 480, + "file_name": "01030.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 82, + "width": 640, + "height": 480, + "file_name": "01040.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 83, + "width": 640, + "height": 480, + "file_name": "01050.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 84, + "width": 640, + "height": 480, + "file_name": "01060.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 85, + "width": 960, + "height": 540, + "file_name": "0107.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 86, + "width": 640, + "height": 480, + "file_name": "01070.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 87, + "width": 960, + "height": 540, + "file_name": "0108.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 88, + "width": 375, + "height": 500, + "file_name": "01080.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 89, + "width": 960, + "height": 540, + "file_name": "0109.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 90, + "width": 960, + "height": 540, + "file_name": "0110.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 91, + "width": 960, + "height": 540, + "file_name": "0112.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 92, + "width": 640, + "height": 480, + "file_name": "01120.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 93, + "width": 960, + "height": 540, + "file_name": "0113.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 94, + "width": 960, + "height": 540, + "file_name": "0114.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 95, + "width": 500, + "height": 372, + "file_name": "01150.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 96, + "width": 960, + "height": 540, + "file_name": "0116.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 97, + "width": 640, + "height": 480, + "file_name": "01160.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 98, + "width": 640, + "height": 480, + "file_name": "01170.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 99, + "width": 640, + "height": 480, + "file_name": "01200.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 100, + "width": 960, + "height": 540, + "file_name": "0121.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 101, + "width": 1024, + "height": 982, + "file_name": "01220.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 102, + "width": 960, + "height": 540, + "file_name": "0124.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 103, + "width": 960, + "height": 540, + "file_name": "0125.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 104, + "width": 960, + "height": 540, + "file_name": "0126.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 105, + "width": 1024, + "height": 732, + "file_name": "01260.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 106, + "width": 960, + "height": 540, + "file_name": "0127.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 107, + "width": 960, + "height": 540, + "file_name": "0128.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 108, + "width": 640, + "height": 480, + "file_name": "01310.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 109, + "width": 1024, + "height": 1538, + "file_name": "01330.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 110, + "width": 1024, + "height": 1536, + "file_name": "01350.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 111, + "width": 640, + "height": 480, + "file_name": "01360.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 112, + "width": 1024, + "height": 1370, + "file_name": "01380.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 113, + "width": 1024, + "height": 1543, + "file_name": "01400.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 114, + "width": 1024, + "height": 1182, + "file_name": "01410.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 115, + "width": 500, + "height": 375, + "file_name": "01420.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 116, + "width": 640, + "height": 480, + "file_name": "01450.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 117, + "width": 1024, + "height": 754, + "file_name": "01460.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 118, + "width": 1024, + "height": 1024, + "file_name": "01470.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 119, + "width": 1024, + "height": 1482, + "file_name": "01500.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 120, + "width": 500, + "height": 375, + "file_name": "01530.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 121, + "width": 640, + "height": 480, + "file_name": "01550.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 122, + "width": 1024, + "height": 1392, + "file_name": "01560.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 123, + "width": 1024, + "height": 683, + "file_name": "01580.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 124, + "width": 1024, + "height": 710, + "file_name": "01590.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 125, + "width": 1024, + "height": 768, + "file_name": "01610.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 126, + "width": 1024, + "height": 640, + "file_name": "01620.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 127, + "width": 1024, + "height": 1207, + "file_name": "01630.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 128, + "width": 1024, + "height": 681, + "file_name": "01640.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 129, + "width": 1024, + "height": 1024, + "file_name": "01650.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 130, + "width": 960, + "height": 540, + "file_name": "01660.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 131, + "width": 640, + "height": 480, + "file_name": "01670.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 132, + "width": 960, + "height": 540, + "file_name": "01680.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 133, + "width": 640, + "height": 480, + "file_name": "01690.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 134, + "width": 1024, + "height": 1420, + "file_name": "01700.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 135, + "width": 1024, + "height": 1545, + "file_name": "01710.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 136, + "width": 640, + "height": 480, + "file_name": "01730.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 137, + "width": 500, + "height": 332, + "file_name": "01740.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 138, + "width": 1024, + "height": 634, + "file_name": "01760.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 139, + "width": 500, + "height": 333, + "file_name": "01770.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 140, + "width": 1024, + "height": 1024, + "file_name": "01780.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 141, + "width": 1024, + "height": 1493, + "file_name": "01800.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 142, + "width": 640, + "height": 480, + "file_name": "01870.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 143, + "width": 1024, + "height": 577, + "file_name": "01890.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 144, + "width": 640, + "height": 480, + "file_name": "01900.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 145, + "width": 1024, + "height": 1532, + "file_name": "01910.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 146, + "width": 1024, + "height": 640, + "file_name": "01920.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 147, + "width": 500, + "height": 375, + "file_name": "01960.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 148, + "width": 1024, + "height": 1374, + "file_name": "01970.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 149, + "width": 1024, + "height": 754, + "file_name": "01980.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 150, + "width": 640, + "height": 480, + "file_name": "01990.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 151, + "width": 1024, + "height": 820, + "file_name": "02040.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 152, + "width": 1024, + "height": 1280, + "file_name": "02080.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 153, + "width": 960, + "height": 540, + "file_name": "02100.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 154, + "width": 640, + "height": 480, + "file_name": "02130.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 155, + "width": 1024, + "height": 1437, + "file_name": "02140.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 156, + "width": 1024, + "height": 1006, + "file_name": "02160.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 157, + "width": 640, + "height": 480, + "file_name": "02170.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 158, + "width": 640, + "height": 480, + "file_name": "02210.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 159, + "width": 1024, + "height": 577, + "file_name": "02240.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 160, + "width": 1024, + "height": 1693, + "file_name": "02260.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 161, + "width": 640, + "height": 480, + "file_name": "02280.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 162, + "width": 1024, + "height": 576, + "file_name": "02290.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 163, + "width": 640, + "height": 480, + "file_name": "02300.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 164, + "width": 640, + "height": 480, + "file_name": "02310.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 165, + "width": 500, + "height": 375, + "file_name": "02340.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 166, + "width": 500, + "height": 375, + "file_name": "02350.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 167, + "width": 1024, + "height": 683, + "file_name": "02370.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 168, + "width": 1024, + "height": 1536, + "file_name": "02380.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 169, + "width": 640, + "height": 480, + "file_name": "02400.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 170, + "width": 640, + "height": 480, + "file_name": "02420.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 171, + "width": 960, + "height": 540, + "file_name": "02440.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 172, + "width": 640, + "height": 480, + "file_name": "02450.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 173, + "width": 1024, + "height": 1408, + "file_name": "02490.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 174, + "width": 960, + "height": 540, + "file_name": "02500.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 175, + "width": 1024, + "height": 1778, + "file_name": "02510.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 176, + "width": 1024, + "height": 1392, + "file_name": "02520.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 177, + "width": 1024, + "height": 1471, + "file_name": "02530.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 178, + "width": 640, + "height": 480, + "file_name": "02540.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 179, + "width": 1024, + "height": 1540, + "file_name": "02570.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 180, + "width": 640, + "height": 480, + "file_name": "02580.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 181, + "width": 640, + "height": 480, + "file_name": "02600.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 182, + "width": 640, + "height": 480, + "file_name": "02610.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 183, + "width": 1024, + "height": 680, + "file_name": "02630.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 184, + "width": 375, + "height": 500, + "file_name": "02640.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 185, + "width": 640, + "height": 480, + "file_name": "02650.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 186, + "width": 1024, + "height": 1536, + "file_name": "02670.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 187, + "width": 500, + "height": 333, + "file_name": "02710.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 188, + "width": 960, + "height": 540, + "file_name": "02720.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 189, + "width": 500, + "height": 375, + "file_name": "02730.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 190, + "width": 1024, + "height": 1536, + "file_name": "02740.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 191, + "width": 1024, + "height": 1380, + "file_name": "02750.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 192, + "width": 1024, + "height": 678, + "file_name": "02760.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 193, + "width": 1024, + "height": 1326, + "file_name": "02780.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 194, + "width": 640, + "height": 480, + "file_name": "02800.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 195, + "width": 640, + "height": 480, + "file_name": "02810.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 196, + "width": 1024, + "height": 925, + "file_name": "02840.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 197, + "width": 640, + "height": 480, + "file_name": "02850.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 198, + "width": 1024, + "height": 1542, + "file_name": "02860.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 199, + "width": 960, + "height": 540, + "file_name": "02880.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 200, + "width": 640, + "height": 480, + "file_name": "02890.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 201, + "width": 640, + "height": 480, + "file_name": "02900.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 202, + "width": 640, + "height": 480, + "file_name": "02910.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 203, + "width": 1024, + "height": 1504, + "file_name": "02920.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 204, + "width": 1024, + "height": 576, + "file_name": "02930.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 205, + "width": 960, + "height": 540, + "file_name": "02950.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 206, + "width": 640, + "height": 480, + "file_name": "02990.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 207, + "width": 960, + "height": 540, + "file_name": "03030.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 208, + "width": 500, + "height": 375, + "file_name": "03050.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 209, + "width": 640, + "height": 480, + "file_name": "03060.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 210, + "width": 640, + "height": 480, + "file_name": "03150.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 211, + "width": 1024, + "height": 861, + "file_name": "03170.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 212, + "width": 1024, + "height": 1402, + "file_name": "03180.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 213, + "width": 1024, + "height": 1526, + "file_name": "03250.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 214, + "width": 1024, + "height": 1297, + "file_name": "03260.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 215, + "width": 1024, + "height": 1216, + "file_name": "03280.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 216, + "width": 640, + "height": 480, + "file_name": "03290.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 217, + "width": 1024, + "height": 1365, + "file_name": "03320.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 218, + "width": 640, + "height": 480, + "file_name": "03330.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 219, + "width": 1024, + "height": 1094, + "file_name": "03340.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 220, + "width": 640, + "height": 480, + "file_name": "03350.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 221, + "width": 640, + "height": 480, + "file_name": "03370.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 222, + "width": 1024, + "height": 1060, + "file_name": "03390.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 223, + "width": 640, + "height": 480, + "file_name": "03410.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 224, + "width": 1024, + "height": 1497, + "file_name": "03430.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 225, + "width": 1024, + "height": 576, + "file_name": "03440.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 226, + "width": 640, + "height": 480, + "file_name": "03460.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 227, + "width": 1024, + "height": 1540, + "file_name": "03480.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 228, + "width": 1024, + "height": 683, + "file_name": "03490.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 229, + "width": 1024, + "height": 1091, + "file_name": "03520.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 230, + "width": 1024, + "height": 1334, + "file_name": "03530.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 231, + "width": 1024, + "height": 1155, + "file_name": "03580.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 232, + "width": 640, + "height": 480, + "file_name": "03610.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 233, + "width": 1024, + "height": 1522, + "file_name": "03630.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 234, + "width": 960, + "height": 540, + "file_name": "03650.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 235, + "width": 640, + "height": 480, + "file_name": "03660.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 236, + "width": 1024, + "height": 1541, + "file_name": "03680.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 237, + "width": 640, + "height": 480, + "file_name": "03700.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 238, + "width": 1024, + "height": 1536, + "file_name": "03710.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 239, + "width": 640, + "height": 480, + "file_name": "03730.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 240, + "width": 500, + "height": 375, + "file_name": "03740.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 241, + "width": 640, + "height": 480, + "file_name": "03750.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 242, + "width": 1024, + "height": 1543, + "file_name": "03760.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 243, + "width": 640, + "height": 480, + "file_name": "03780.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 244, + "width": 1024, + "height": 1532, + "file_name": "03800.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 245, + "width": 640, + "height": 480, + "file_name": "03810.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 246, + "width": 1024, + "height": 1366, + "file_name": "03840.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 247, + "width": 1024, + "height": 680, + "file_name": "03890.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 248, + "width": 640, + "height": 480, + "file_name": "03920.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 249, + "width": 1024, + "height": 1534, + "file_name": "03940.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 250, + "width": 1024, + "height": 683, + "file_name": "03950.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 251, + "width": 960, + "height": 540, + "file_name": "03970.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 252, + "width": 640, + "height": 480, + "file_name": "03980.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 253, + "width": 1024, + "height": 1386, + "file_name": "04000.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 254, + "width": 640, + "height": 480, + "file_name": "04050.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 255, + "width": 1024, + "height": 768, + "file_name": "04070.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 256, + "width": 1024, + "height": 1529, + "file_name": "04110.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 257, + "width": 640, + "height": 480, + "file_name": "04120.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 258, + "width": 1024, + "height": 1582, + "file_name": "04130.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 259, + "width": 640, + "height": 480, + "file_name": "04230.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 260, + "width": 1024, + "height": 641, + "file_name": "04240.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 261, + "width": 1024, + "height": 713, + "file_name": "04260.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 262, + "width": 1024, + "height": 1536, + "file_name": "04290.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 263, + "width": 1024, + "height": 1542, + "file_name": "04300.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 264, + "width": 500, + "height": 375, + "file_name": "04320.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 265, + "width": 1024, + "height": 1540, + "file_name": "04330.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 266, + "width": 1024, + "height": 1530, + "file_name": "04360.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 267, + "width": 1024, + "height": 1366, + "file_name": "04380.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 268, + "width": 1024, + "height": 1173, + "file_name": "04400.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 269, + "width": 1024, + "height": 1535, + "file_name": "04410.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 270, + "width": 1024, + "height": 1434, + "file_name": "04470.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 271, + "width": 1024, + "height": 768, + "file_name": "04490.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 272, + "width": 640, + "height": 480, + "file_name": "04520.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 273, + "width": 332, + "height": 500, + "file_name": "04530.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 274, + "width": 1024, + "height": 1434, + "file_name": "04540.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 275, + "width": 1024, + "height": 576, + "file_name": "04550.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 276, + "width": 1024, + "height": 1492, + "file_name": "04560.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 277, + "width": 1024, + "height": 754, + "file_name": "04570.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 278, + "width": 1024, + "height": 642, + "file_name": "04580.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 279, + "width": 1024, + "height": 684, + "file_name": "04600.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 280, + "width": 960, + "height": 540, + "file_name": "04620.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 281, + "width": 1024, + "height": 714, + "file_name": "04630.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 282, + "width": 1024, + "height": 1368, + "file_name": "04640.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 283, + "width": 375, + "height": 500, + "file_name": "04670.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 284, + "width": 640, + "height": 480, + "file_name": "04680.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 285, + "width": 330, + "height": 500, + "file_name": "04700.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 286, + "width": 1024, + "height": 576, + "file_name": "04710.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 287, + "width": 1024, + "height": 1708, + "file_name": "04730.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 288, + "width": 500, + "height": 375, + "file_name": "04740.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 289, + "width": 640, + "height": 480, + "file_name": "04760.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 290, + "width": 1024, + "height": 837, + "file_name": "04770.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 291, + "width": 1024, + "height": 830, + "file_name": "04780.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 292, + "width": 1024, + "height": 688, + "file_name": "04810.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 293, + "width": 500, + "height": 375, + "file_name": "04820.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 294, + "width": 640, + "height": 480, + "file_name": "04840.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 295, + "width": 1024, + "height": 1473, + "file_name": "04850.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 296, + "width": 1024, + "height": 1182, + "file_name": "04860.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 297, + "width": 1024, + "height": 1724, + "file_name": "04890.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 298, + "width": 640, + "height": 480, + "file_name": "04920.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 299, + "width": 640, + "height": 480, + "file_name": "04930.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 300, + "width": 1024, + "height": 1539, + "file_name": "04950.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 301, + "width": 1024, + "height": 576, + "file_name": "04960.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 302, + "width": 500, + "height": 375, + "file_name": "04980.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 303, + "width": 640, + "height": 480, + "file_name": "04990.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 304, + "width": 640, + "height": 480, + "file_name": "05020.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 305, + "width": 1024, + "height": 1572, + "file_name": "05050.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 306, + "width": 1024, + "height": 1481, + "file_name": "05070.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 307, + "width": 1024, + "height": 684, + "file_name": "05080.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 308, + "width": 640, + "height": 480, + "file_name": "05100.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 309, + "width": 640, + "height": 480, + "file_name": "05110.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 310, + "width": 1024, + "height": 1541, + "file_name": "05120.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 311, + "width": 1024, + "height": 683, + "file_name": "05170.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 312, + "width": 640, + "height": 480, + "file_name": "05180.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 313, + "width": 1024, + "height": 672, + "file_name": "05190.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 314, + "width": 640, + "height": 480, + "file_name": "05200.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 315, + "width": 1024, + "height": 1485, + "file_name": "05210.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 316, + "width": 1024, + "height": 1075, + "file_name": "05230.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 317, + "width": 640, + "height": 480, + "file_name": "05260.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 318, + "width": 1024, + "height": 1579, + "file_name": "05270.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 319, + "width": 1024, + "height": 754, + "file_name": "05280.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 320, + "width": 1024, + "height": 1231, + "file_name": "05290.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 321, + "width": 640, + "height": 480, + "file_name": "05310.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 322, + "width": 640, + "height": 480, + "file_name": "05320.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 323, + "width": 1024, + "height": 754, + "file_name": "05330.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 324, + "width": 500, + "height": 375, + "file_name": "05350.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 325, + "width": 640, + "height": 480, + "file_name": "05360.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 326, + "width": 1024, + "height": 732, + "file_name": "05370.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 327, + "width": 1024, + "height": 678, + "file_name": "05400.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 328, + "width": 500, + "height": 341, + "file_name": "05420.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 329, + "width": 640, + "height": 480, + "file_name": "05430.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 330, + "width": 640, + "height": 480, + "file_name": "05440.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 331, + "width": 640, + "height": 480, + "file_name": "05460.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 332, + "width": 1024, + "height": 1536, + "file_name": "05470.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 333, + "width": 1024, + "height": 1536, + "file_name": "05480.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 334, + "width": 1024, + "height": 790, + "file_name": "05510.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 335, + "width": 1024, + "height": 1424, + "file_name": "05520.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 336, + "width": 640, + "height": 480, + "file_name": "05530.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 337, + "width": 640, + "height": 480, + "file_name": "05540.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 338, + "width": 1024, + "height": 1447, + "file_name": "05550.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 339, + "width": 1024, + "height": 747, + "file_name": "05580.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 340, + "width": 1024, + "height": 1463, + "file_name": "05590.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 341, + "width": 640, + "height": 480, + "file_name": "05610.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 342, + "width": 1024, + "height": 1377, + "file_name": "05620.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 343, + "width": 500, + "height": 375, + "file_name": "05630.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 344, + "width": 1024, + "height": 1367, + "file_name": "05680.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 345, + "width": 640, + "height": 480, + "file_name": "05690.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 346, + "width": 333, + "height": 500, + "file_name": "05700.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 347, + "width": 640, + "height": 480, + "file_name": "05710.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 348, + "width": 1024, + "height": 1128, + "file_name": "05730.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 349, + "width": 1024, + "height": 1331, + "file_name": "05760.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 350, + "width": 1024, + "height": 671, + "file_name": "05770.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 351, + "width": 640, + "height": 480, + "file_name": "05780.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 352, + "width": 1024, + "height": 1521, + "file_name": "05790.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 353, + "width": 640, + "height": 480, + "file_name": "05840.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 354, + "width": 1024, + "height": 1622, + "file_name": "05850.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 355, + "width": 1024, + "height": 1541, + "file_name": "05870.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 356, + "width": 960, + "height": 540, + "file_name": "05880.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 357, + "width": 640, + "height": 480, + "file_name": "05890.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 358, + "width": 1024, + "height": 1536, + "file_name": "05910.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 359, + "width": 1024, + "height": 949, + "file_name": "05920.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 360, + "width": 960, + "height": 540, + "file_name": "05960.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 361, + "width": 1024, + "height": 1138, + "file_name": "06000.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 362, + "width": 640, + "height": 480, + "file_name": "06010.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 363, + "width": 1024, + "height": 1424, + "file_name": "06030.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 364, + "width": 353, + "height": 500, + "file_name": "06050.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 365, + "width": 1024, + "height": 1536, + "file_name": "06090.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 366, + "width": 960, + "height": 540, + "file_name": "06110.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 367, + "width": 640, + "height": 480, + "file_name": "06120.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 368, + "width": 1024, + "height": 576, + "file_name": "06150.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 369, + "width": 640, + "height": 480, + "file_name": "06160.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 370, + "width": 1024, + "height": 754, + "file_name": "06170.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 371, + "width": 500, + "height": 357, + "file_name": "06180.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 372, + "width": 640, + "height": 480, + "file_name": "06190.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 373, + "width": 333, + "height": 500, + "file_name": "06210.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 374, + "width": 1024, + "height": 1365, + "file_name": "06240.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 375, + "width": 1024, + "height": 768, + "file_name": "06260.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 376, + "width": 500, + "height": 375, + "file_name": "06270.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 377, + "width": 1024, + "height": 684, + "file_name": "06280.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 378, + "width": 1024, + "height": 757, + "file_name": "06290.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 379, + "width": 1024, + "height": 680, + "file_name": "06300.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 380, + "width": 500, + "height": 374, + "file_name": "06340.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 381, + "width": 640, + "height": 480, + "file_name": "06370.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 382, + "width": 1024, + "height": 1563, + "file_name": "06380.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 383, + "width": 640, + "height": 480, + "file_name": "06390.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 384, + "width": 640, + "height": 480, + "file_name": "06400.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 385, + "width": 1024, + "height": 1541, + "file_name": "06430.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 386, + "width": 500, + "height": 356, + "file_name": "06450.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 387, + "width": 640, + "height": 480, + "file_name": "06460.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 388, + "width": 1024, + "height": 867, + "file_name": "06470.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 389, + "width": 1024, + "height": 1540, + "file_name": "06480.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 390, + "width": 500, + "height": 375, + "file_name": "06490.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + } + ], + "annotations": [ + { + "id": 1, + "image_id": 1, + "category_id": 30, + "segmentation": [ + [ + 182.00016, + 177.99993, + 303.99983999999995, + 177.99993, + 303.99983999999995, + 316.99971, + 182.00016, + 316.99971 + ] + ], + "area": 16957.928680070392, + "bbox": [ + 182.00016, + 177.99993, + 121.99968, + 138.99978 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 2, + "image_id": 1, + "category_id": 30, + "segmentation": [ + [ + 645.0, + 211.99995, + 769.9996800000001, + 211.99995, + 769.9996800000001, + 302.00013, + 645.0, + 302.00013 + ] + ], + "area": 11249.993699942412, + "bbox": [ + 645.0, + 211.99995, + 124.99967999999998, + 90.00018 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 3, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 282.0, + 99.00000000000001, + 390.0, + 99.00000000000001, + 390.0, + 228.0, + 282.0, + 228.0 + ] + ], + "area": 13932.0, + "bbox": [ + 282.0, + 99.00000000000001, + 108.0, + 129.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 4, + "image_id": 3, + "category_id": 30, + "segmentation": [ + [ + 330.00048, + 49.00014000000001, + 626.00016, + 49.00014000000001, + 626.00016, + 450.9999, + 330.00048, + 450.9999 + ] + ], + "area": 118991.80032007684, + "bbox": [ + 330.00048, + 49.00014000000001, + 295.99968, + 401.99976 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 5, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 371.0, + 34.0, + 530.0, + 34.0, + 530.0, + 238.0, + 371.0, + 238.0 + ] + ], + "area": 32436.0, + "bbox": [ + 371.0, + 34.0, + 159.0, + 204.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 6, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 575.0, + 64.0, + 712.0, + 64.0, + 712.0, + 248.0, + 575.0, + 248.0 + ] + ], + "area": 25208.0, + "bbox": [ + 575.0, + 64.0, + 137.0, + 184.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 7, + "image_id": 5, + "category_id": 30, + "segmentation": [ + [ + 243.00048, + 108.99981000000001, + 407.00016, + 108.99981000000001, + 407.00016, + 277.99983, + 243.00048, + 277.99983 + ] + ], + "area": 27715.94919999359, + "bbox": [ + 243.00048, + 108.99981000000001, + 163.99968, + 169.00002 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 8, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 171.0, + 93.0, + 343.0, + 93.0, + 343.0, + 314.0, + 171.0, + 314.0 + ] + ], + "area": 38012.0, + "bbox": [ + 171.0, + 93.0, + 172.0, + 221.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 9, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 674.0, + 82.0, + 825.0, + 82.0, + 825.0, + 259.0, + 674.0, + 259.0 + ] + ], + "area": 26727.0, + "bbox": [ + 674.0, + 82.0, + 151.0, + 177.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 10, + "image_id": 7, + "category_id": 30, + "segmentation": [ + [ + 387.99984, + 61.999829999999996, + 564.9998400000001, + 61.999829999999996, + 564.9998400000001, + 244.99989, + 387.99984, + 244.99989 + ] + ], + "area": 32391.01062000001, + "bbox": [ + 387.99984, + 61.999829999999996, + 177.0, + 183.00006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 11, + "image_id": 8, + "category_id": 30, + "segmentation": [ + [ + 189.00047999999998, + 60.99975, + 329.00016, + 60.99975, + 329.00016, + 203.99984999999998, + 189.00047999999998, + 203.99984999999998 + ] + ], + "area": 20019.968239968, + "bbox": [ + 189.00047999999998, + 60.99975, + 139.99967999999998, + 143.0001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 12, + "image_id": 8, + "category_id": 30, + "segmentation": [ + [ + 624.0, + 165.99978, + 767.9999999999999, + 165.99978, + 767.9999999999999, + 299.9997, + 624.0, + 299.9997 + ] + ], + "area": 19295.98847999999, + "bbox": [ + 624.0, + 165.99978, + 144.0, + 133.99992 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 13, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 320.00000000000006, + 162.0, + 406.0, + 162.0, + 406.0, + 259.0, + 320.00000000000006, + 259.0 + ] + ], + "area": 8341.999999999995, + "bbox": [ + 320.00000000000006, + 162.0, + 86.0, + 97.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 14, + "image_id": 10, + "category_id": 30, + "segmentation": [ + [ + 177.00048, + 152.00027999999998, + 221.00016000000002, + 152.00027999999998, + 221.00016000000002, + 204.00012, + 177.00048, + 204.00012 + ] + ], + "area": 2287.976320051202, + "bbox": [ + 177.00048, + 152.00027999999998, + 43.99968, + 51.999840000000006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 15, + "image_id": 10, + "category_id": 30, + "segmentation": [ + [ + 317.00016, + 129.99987, + 372.99984, + 129.99987, + 372.99984, + 187.99965, + 317.00016, + 187.99965 + ] + ], + "area": 3247.9691200704015, + "bbox": [ + 317.00016, + 129.99987, + 55.999680000000005, + 57.99978 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 16, + "image_id": 10, + "category_id": 30, + "segmentation": [ + [ + 451.99968, + 148.00023, + 481.99968000000007, + 148.00023, + 481.99968000000007, + 222.00020999999998, + 451.99968, + 222.00020999999998 + ] + ], + "area": 2219.999400000004, + "bbox": [ + 451.99968, + 148.00023, + 30.0, + 73.99998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 17, + "image_id": 10, + "category_id": 30, + "segmentation": [ + [ + 533.00016, + 174.00015000000002, + 570.99984, + 174.00015000000002, + 570.99984, + 248.00012999999998, + 533.00016, + 248.00012999999998 + ] + ], + "area": 2811.9755600063913, + "bbox": [ + 533.00016, + 174.00015000000002, + 37.99968, + 73.99998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 18, + "image_id": 10, + "category_id": 30, + "segmentation": [ + [ + 597.00048, + 162.00027, + 665.0001599999999, + 162.00027, + 665.0001599999999, + 261.00009, + 597.00048, + 261.00009 + ] + ], + "area": 6731.95608005759, + "bbox": [ + 597.00048, + 162.00027, + 67.99968, + 98.99982 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 19, + "image_id": 10, + "category_id": 30, + "segmentation": [ + [ + 781.00032, + 234.99990000000003, + 841.00032, + 234.99990000000003, + 841.00032, + 300.99978, + 781.00032, + 300.99978 + ] + ], + "area": 3959.9927999999977, + "bbox": [ + 781.00032, + 234.99990000000003, + 60.0, + 65.99988 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 20, + "image_id": 10, + "category_id": 30, + "segmentation": [ + [ + 580.99968, + 281.00007, + 622.9996799999999, + 281.00007, + 622.9996799999999, + 345.00033, + 580.99968, + 345.00033 + ] + ], + "area": 2688.010919999994, + "bbox": [ + 580.99968, + 281.00007, + 42.0, + 64.00026 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 21, + "image_id": 10, + "category_id": 30, + "segmentation": [ + [ + 375.00048000000004, + 274.00005, + 425.00016, + 274.00005, + 425.00016, + 310.00023000000004, + 375.00048000000004, + 310.00023000000004 + ] + ], + "area": 1799.9974799424012, + "bbox": [ + 375.00048000000004, + 274.00005, + 49.99968, + 36.00018 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 22, + "image_id": 10, + "category_id": 30, + "segmentation": [ + [ + 224.00016, + 260.00028000000003, + 281.00016, + 260.00028000000003, + 281.00016, + 313.0002, + 224.00016, + 313.0002 + ] + ], + "area": 3020.995439999999, + "bbox": [ + 224.00016, + 260.00028000000003, + 57.0, + 52.99992 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 23, + "image_id": 10, + "category_id": 30, + "segmentation": [ + [ + 54.00000000000001, + 174.00015, + 154.99967999999998, + 174.00015, + 154.99967999999998, + 303.00021, + 54.00000000000001, + 303.00021 + ] + ], + "area": 13028.964779980797, + "bbox": [ + 54.00000000000001, + 174.00015, + 100.99968, + 129.00006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 24, + "image_id": 11, + "category_id": 1, + "segmentation": [ + [ + 90.0, + 36.00000000000001, + 144.00000000000003, + 36.00000000000001, + 144.00000000000003, + 99.0, + 90.0, + 99.0 + ] + ], + "area": 3402.0000000000014, + "bbox": [ + 90.0, + 36.00000000000001, + 54.0, + 63.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 25, + "image_id": 12, + "category_id": 30, + "segmentation": [ + [ + 417.00048000000004, + 166.00032000000002, + 497.00016, + 166.00032000000002, + 497.00016, + 258.00012000000004, + 417.00048000000004, + 258.00012000000004 + ] + ], + "area": 7359.954560063998, + "bbox": [ + 417.00048000000004, + 166.00032000000002, + 79.99968, + 91.9998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 26, + "image_id": 13, + "category_id": 30, + "segmentation": [ + [ + 394.99968, + 92.00007, + 576.0, + 92.00007, + 576.0, + 285.99993, + 394.99968, + 285.99993 + ] + ], + "area": 35114.0367399552, + "bbox": [ + 394.99968, + 92.00007, + 181.00032, + 193.99985999999998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 27, + "image_id": 14, + "category_id": 1, + "segmentation": [ + [ + 225.0, + 129.0, + 788.0, + 129.0, + 788.0, + 749.0, + 225.0, + 749.0 + ] + ], + "area": 349060.0, + "bbox": [ + 225.0, + 129.0, + 563.0, + 620.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 28, + "image_id": 15, + "category_id": 1, + "segmentation": [ + [ + 379.0, + 66.0, + 734.0, + 66.0, + 734.0, + 506.0, + 379.0, + 506.0 + ] + ], + "area": 156200.0, + "bbox": [ + 379.0, + 66.0, + 355.0, + 440.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 29, + "image_id": 16, + "category_id": 30, + "segmentation": [ + [ + 542.00016, + 69.99992999999999, + 671.0001599999999, + 69.99992999999999, + 671.0001599999999, + 225.99999, + 542.00016, + 225.99999 + ] + ], + "area": 20124.007739999986, + "bbox": [ + 542.00016, + 69.99992999999999, + 129.0, + 156.00006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 30, + "image_id": 17, + "category_id": 30, + "segmentation": [ + [ + 531.99984, + 90.99999, + 758.00016, + 90.99999, + 758.00016, + 301.00005, + 531.99984, + 301.00005 + ] + ], + "area": 47460.08076001922, + "bbox": [ + 531.99984, + 90.99999, + 226.00032, + 210.00006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 31, + "image_id": 18, + "category_id": 30, + "segmentation": [ + [ + 242.00016000000002, + 135.00027, + 381.99984, + 135.00027, + 381.99984, + 301.00005000000004, + 242.00016000000002, + 301.00005000000004 + ] + ], + "area": 23239.916080070405, + "bbox": [ + 242.00016000000002, + 135.00027, + 139.99967999999998, + 165.99978 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 32, + "image_id": 19, + "category_id": 30, + "segmentation": [ + [ + 268.99968, + 147.00015000000002, + 388.99968, + 147.00015000000002, + 388.99968, + 317.00025, + 268.99968, + 317.00025 + ] + ], + "area": 20400.011999999995, + "bbox": [ + 268.99968, + 147.00015000000002, + 120.0, + 170.0001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 33, + "image_id": 19, + "category_id": 30, + "segmentation": [ + [ + 578.00016, + 179.00001, + 699.9998400000001, + 179.00001, + 699.9998400000001, + 360.99999, + 578.00016, + 360.99999 + ] + ], + "area": 22203.939320006404, + "bbox": [ + 578.00016, + 179.00001, + 121.99968, + 181.99998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 34, + "image_id": 20, + "category_id": 30, + "segmentation": [ + [ + 232.99968, + 70.00019999999998, + 456.0, + 70.00019999999998, + 456.0, + 353.00016000000005, + 232.99968, + 353.00016000000005 + ] + ], + "area": 63109.08163998722, + "bbox": [ + 232.99968, + 70.00019999999998, + 223.00032, + 282.99996000000004 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 35, + "image_id": 21, + "category_id": 30, + "segmentation": [ + [ + 488.00016, + 51.000029999999995, + 833.00016, + 51.000029999999995, + 833.00016, + 358.00029, + 488.00016, + 358.00029 + ] + ], + "area": 105915.08970000003, + "bbox": [ + 488.00016, + 51.000029999999995, + 345.0, + 307.00026 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 36, + "image_id": 22, + "category_id": 30, + "segmentation": [ + [ + 198.99984, + 83.99997, + 542.99952, + 83.99997, + 542.99952, + 431.00019, + 198.99984, + 431.00019 + ] + ], + "area": 119367.96463992957, + "bbox": [ + 198.99984, + 83.99997, + 343.99968, + 347.00021999999996 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 37, + "image_id": 23, + "category_id": 30, + "segmentation": [ + [ + 367.00032, + 69.99992999999999, + 656.00064, + 69.99992999999999, + 656.00064, + 308.00007, + 367.00032, + 308.00007 + ] + ], + "area": 68782.11662004479, + "bbox": [ + 367.00032, + 69.99992999999999, + 289.00032, + 238.00014 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 38, + "image_id": 24, + "category_id": 30, + "segmentation": [ + [ + 337.99967999999996, + 86.00013, + 577.9996799999999, + 86.00013, + 577.9996799999999, + 348.00003, + 337.99967999999996, + 348.00003 + ] + ], + "area": 62879.97599999998, + "bbox": [ + 337.99967999999996, + 86.00013, + 240.0, + 261.99989999999997 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 39, + "image_id": 25, + "category_id": 30, + "segmentation": [ + [ + 375.00048, + 131.99976, + 588.00048, + 131.99976, + 588.00048, + 389.99988, + 375.00048, + 389.99988 + ] + ], + "area": 54954.025560000024, + "bbox": [ + 375.00048, + 131.99976, + 213.0, + 258.00012 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 40, + "image_id": 26, + "category_id": 30, + "segmentation": [ + [ + 264.0, + 18.999899999999997, + 469.00032000000004, + 18.999899999999997, + 469.00032000000004, + 196.00002, + 264.0, + 196.00002 + ] + ], + "area": 36285.08124003841, + "bbox": [ + 264.0, + 18.999899999999997, + 205.00032000000002, + 177.00012 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 41, + "image_id": 27, + "category_id": 30, + "segmentation": [ + [ + 624.9998400000001, + 109.99989, + 794.99952, + 109.99989, + 794.99952, + 321.00003000000004, + 624.9998400000001, + 321.00003000000004 + ] + ], + "area": 35869.956279955186, + "bbox": [ + 624.9998400000001, + 109.99989, + 169.99967999999998, + 211.00014000000002 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 42, + "image_id": 28, + "category_id": 30, + "segmentation": [ + [ + 230.00064, + 68.00003999999998, + 523.00032, + 68.00003999999998, + 523.00032, + 308.99988, + 230.00064, + 308.99988 + ] + ], + "area": 70612.87600005121, + "bbox": [ + 230.00064, + 68.00003999999998, + 292.99967999999996, + 240.99984 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 43, + "image_id": 29, + "category_id": 30, + "segmentation": [ + [ + 404.00064, + 135.99981, + 559.00032, + 135.99981, + 559.00032, + 304.99983, + 404.00064, + 304.99983 + ] + ], + "area": 26194.949019993597, + "bbox": [ + 404.00064, + 135.99981, + 154.99967999999998, + 169.00002 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 44, + "image_id": 30, + "category_id": 30, + "segmentation": [ + [ + 180.00047999999998, + 38.00007, + 572.00016, + 38.00007, + 572.00016, + 356.00013, + 180.00047999999998, + 356.00013 + ] + ], + "area": 124655.92175998083, + "bbox": [ + 180.00047999999998, + 38.00007, + 391.99968, + 318.00006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 45, + "image_id": 31, + "category_id": 30, + "segmentation": [ + [ + 411.99984, + 134.99973, + 558.99984, + 134.99973, + 558.99984, + 304.99983, + 411.99984, + 304.99983 + ] + ], + "area": 24990.014699999985, + "bbox": [ + 411.99984, + 134.99973, + 147.0, + 170.0001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 46, + "image_id": 32, + "category_id": 30, + "segmentation": [ + [ + 397.00032000000004, + 118.00026000000001, + 528.0, + 118.00026000000001, + 528.0, + 293.00022, + 397.00032000000004, + 293.00022 + ] + ], + "area": 22924.938760012792, + "bbox": [ + 397.00032000000004, + 118.00026000000001, + 130.99967999999998, + 174.99996 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 47, + "image_id": 33, + "category_id": 30, + "segmentation": [ + [ + 493.99968, + 92.00007, + 799.9996799999999, + 92.00007, + 799.9996799999999, + 405.99981, + 493.99968, + 405.99981 + ] + ], + "area": 96083.92043999997, + "bbox": [ + 493.99968, + 92.00007, + 306.0, + 313.99974000000003 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 48, + "image_id": 34, + "category_id": 30, + "segmentation": [ + [ + 245.99999999999997, + 117.99999, + 496.99968000000007, + 117.99999, + 496.99968000000007, + 461.99996999999996, + 245.99999999999997, + 461.99996999999996 + ] + ], + "area": 86343.88490000642, + "bbox": [ + 245.99999999999997, + 117.99999, + 250.99968, + 343.99998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 49, + "image_id": 35, + "category_id": 30, + "segmentation": [ + [ + 269.00016000000005, + 42.99993000000001, + 495.00048000000004, + 42.99993000000001, + 495.00048000000004, + 318.99987, + 269.00016000000005, + 318.99987 + ] + ], + "area": 62376.074759980795, + "bbox": [ + 269.00016000000005, + 42.99993000000001, + 226.00032, + 275.99994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 50, + "image_id": 36, + "category_id": 30, + "segmentation": [ + [ + 119.00015999999997, + 17.000280000000004, + 398.00016, + 17.000280000000004, + 398.00016, + 338.00004, + 119.00015999999997, + 338.00004 + ] + ], + "area": 89558.93304, + "bbox": [ + 119.00015999999997, + 17.000280000000004, + 279.0, + 320.99976 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 51, + "image_id": 37, + "category_id": 30, + "segmentation": [ + [ + 444.99984, + 91.00026000000001, + 584.99952, + 91.00026000000001, + 584.99952, + 223.00002, + 444.99984, + 223.00002 + ] + ], + "area": 18479.924160076793, + "bbox": [ + 444.99984, + 91.00026000000001, + 139.99967999999998, + 131.99976 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 52, + "image_id": 38, + "category_id": 1, + "segmentation": [ + [ + 469.00000000000006, + 77.99999999999999, + 610.0000000000001, + 77.99999999999999, + 610.0000000000001, + 280.00000000000006, + 469.00000000000006, + 280.00000000000006 + ] + ], + "area": 28482.00000000002, + "bbox": [ + 469.00000000000006, + 77.99999999999999, + 141.0, + 202.00000000000003 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 53, + "image_id": 39, + "category_id": 1, + "segmentation": [ + [ + 164.99999999999997, + 34.99999999999999, + 220.0, + 34.99999999999999, + 220.0, + 122.0, + 164.99999999999997, + 122.0 + ] + ], + "area": 4785.000000000003, + "bbox": [ + 164.99999999999997, + 34.99999999999999, + 55.0, + 87.00000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 54, + "image_id": 39, + "category_id": 1, + "segmentation": [ + [ + 6.0, + 60.0, + 75.0, + 60.0, + 75.0, + 156.0, + 6.0, + 156.0 + ] + ], + "area": 6624.0, + "bbox": [ + 6.0, + 60.0, + 69.0, + 96.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 55, + "image_id": 40, + "category_id": 30, + "segmentation": [ + [ + 503.00016, + 61.000289999999985, + 666.99984, + 61.000289999999985, + 666.99984, + 295.00011, + 503.00016, + 295.00011 + ] + ], + "area": 38375.89560005759, + "bbox": [ + 503.00016, + 61.000289999999985, + 163.99968, + 233.99982 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 56, + "image_id": 41, + "category_id": 30, + "segmentation": [ + [ + 300.0, + 58.000049999999995, + 612.0, + 58.000049999999995, + 612.0, + 348.00003, + 300.0, + 348.00003 + ] + ], + "area": 90479.99376, + "bbox": [ + 300.0, + 58.000049999999995, + 312.0, + 289.99998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 57, + "image_id": 42, + "category_id": 1, + "segmentation": [ + [ + 128.0, + 253.0, + 224.0, + 253.0, + 224.0, + 365.99999999999994, + 128.0, + 365.99999999999994 + ] + ], + "area": 10847.999999999995, + "bbox": [ + 128.0, + 253.0, + 96.0, + 113.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 58, + "image_id": 42, + "category_id": 1, + "segmentation": [ + [ + 439.0, + 244.0, + 548.0, + 244.0, + 548.0, + 373.0, + 439.0, + 373.0 + ] + ], + "area": 14061.0, + "bbox": [ + 439.0, + 244.0, + 109.0, + 129.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 59, + "image_id": 42, + "category_id": 1, + "segmentation": [ + [ + 850.0, + 244.0, + 944.0, + 244.0, + 944.0, + 370.0, + 850.0, + 370.0 + ] + ], + "area": 11844.0, + "bbox": [ + 850.0, + 244.0, + 94.0, + 126.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 60, + "image_id": 43, + "category_id": 30, + "segmentation": [ + [ + 469.00031999999993, + 97.0002, + 606.0, + 97.0002, + 606.0, + 206.00028000000003, + 469.00031999999993, + 206.00028000000003 + ] + ], + "area": 14932.97607997441, + "bbox": [ + 469.00031999999993, + 97.0002, + 136.99968, + 109.00008 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 61, + "image_id": 44, + "category_id": 1, + "segmentation": [ + [ + 323.0, + 34.0, + 477.0, + 34.0, + 477.0, + 239.00000000000003, + 323.0, + 239.00000000000003 + ] + ], + "area": 31570.000000000004, + "bbox": [ + 323.0, + 34.0, + 154.0, + 205.00000000000003 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 62, + "image_id": 45, + "category_id": 1, + "segmentation": [ + [ + 388.0, + 175.0, + 589.0, + 175.0, + 589.0, + 434.00000000000006, + 388.0, + 434.00000000000006 + ] + ], + "area": 52059.000000000015, + "bbox": [ + 388.0, + 175.0, + 201.0, + 259.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 63, + "image_id": 45, + "category_id": 1, + "segmentation": [ + [ + 694.0, + 333.0, + 921.0, + 333.0, + 921.0, + 606.0, + 694.0, + 606.0 + ] + ], + "area": 61971.0, + "bbox": [ + 694.0, + 333.0, + 227.0, + 273.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 64, + "image_id": 46, + "category_id": 30, + "segmentation": [ + [ + 297.99984, + 104.99975999999997, + 606.99984, + 104.99975999999997, + 606.99984, + 441.99971999999997, + 297.99984, + 441.99971999999997 + ] + ], + "area": 104132.98763999998, + "bbox": [ + 297.99984, + 104.99975999999997, + 309.0, + 336.99996 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 65, + "image_id": 47, + "category_id": 1, + "segmentation": [ + [ + 534.0, + 148.0, + 666.0, + 148.0, + 666.0, + 323.0, + 534.0, + 323.0 + ] + ], + "area": 23100.0, + "bbox": [ + 534.0, + 148.0, + 132.0, + 175.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 66, + "image_id": 48, + "category_id": 30, + "segmentation": [ + [ + 248.99999999999997, + 62.00036999999999, + 513.0, + 62.00036999999999, + 513.0, + 322.00011, + 248.99999999999997, + 322.00011 + ] + ], + "area": 68639.93136, + "bbox": [ + 248.99999999999997, + 62.00036999999999, + 264.0, + 259.99974 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 67, + "image_id": 49, + "category_id": 1, + "segmentation": [ + [ + 341.0, + 59.000000000000014, + 580.0, + 59.000000000000014, + 580.0, + 384.0, + 341.0, + 384.0 + ] + ], + "area": 77675.0, + "bbox": [ + 341.0, + 59.000000000000014, + 239.0, + 324.99999999999994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 68, + "image_id": 50, + "category_id": 30, + "segmentation": [ + [ + 328.99968, + 65.99988, + 594.0, + 65.99988, + 594.0, + 352.00008, + 328.99968, + 352.00008 + ] + ], + "area": 75790.144520064, + "bbox": [ + 328.99968, + 65.99988, + 265.00032, + 286.0002 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 69, + "image_id": 51, + "category_id": 30, + "segmentation": [ + [ + 363.99984, + 44.00028, + 564.9998400000001, + 44.00028, + 564.9998400000001, + 204.00012, + 363.99984, + 204.00012 + ] + ], + "area": 32159.967840000012, + "bbox": [ + 363.99984, + 44.00028, + 201.0, + 159.99984 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 70, + "image_id": 52, + "category_id": 1, + "segmentation": [ + [ + 266.0, + 214.0, + 637.0, + 214.0, + 637.0, + 621.0, + 266.0, + 621.0 + ] + ], + "area": 150997.0, + "bbox": [ + 266.0, + 214.0, + 371.0, + 407.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 71, + "image_id": 53, + "category_id": 1, + "segmentation": [ + [ + 272.0, + 170.99999999999997, + 404.00000000000006, + 170.99999999999997, + 404.00000000000006, + 311.0, + 272.0, + 311.0 + ] + ], + "area": 18480.00000000001, + "bbox": [ + 272.0, + 170.99999999999997, + 132.0, + 140.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 72, + "image_id": 54, + "category_id": 30, + "segmentation": [ + [ + 266.99952, + 98.99981999999999, + 599.9995200000001, + 98.99981999999999, + 599.9995200000001, + 447.99965999999995, + 266.99952, + 447.99965999999995 + ] + ], + "area": 116216.94672, + "bbox": [ + 266.99952, + 98.99981999999999, + 333.0, + 348.99984 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 73, + "image_id": 54, + "category_id": 30, + "segmentation": [ + [ + 781.99968, + 274.00005, + 915.0, + 274.00005, + 915.0, + 405.00027000000006, + 781.99968, + 405.00027000000006 + ] + ], + "area": 17423.07118007041, + "bbox": [ + 781.99968, + 274.00005, + 133.00032, + 131.00022 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 74, + "image_id": 55, + "category_id": 1, + "segmentation": [ + [ + 402.0, + 39.999999999999986, + 567.0, + 39.999999999999986, + 567.0, + 285.0, + 402.0, + 285.0 + ] + ], + "area": 40425.0, + "bbox": [ + 402.0, + 39.999999999999986, + 165.0, + 245.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 75, + "image_id": 56, + "category_id": 30, + "segmentation": [ + [ + 225.99984, + 71.00001000000002, + 437.99951999999996, + 71.00001000000002, + 437.99951999999996, + 264.99987, + 225.99984, + 264.99987 + ] + ], + "area": 41127.90824004478, + "bbox": [ + 225.99984, + 71.00001000000002, + 211.99968, + 193.99985999999998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 76, + "image_id": 56, + "category_id": 30, + "segmentation": [ + [ + 613.0003200000001, + 118.9998, + 728.00064, + 118.9998, + 728.00064, + 255.99996, + 613.0003200000001, + 255.99996 + ] + ], + "area": 15755.062240051182, + "bbox": [ + 613.0003200000001, + 118.9998, + 115.00032, + 137.00016 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 77, + "image_id": 57, + "category_id": 1, + "segmentation": [ + [ + 153.0, + 15.99999999999999, + 617.0, + 15.99999999999999, + 617.0, + 571.0, + 153.0, + 571.0 + ] + ], + "area": 257520.0, + "bbox": [ + 153.0, + 15.99999999999999, + 464.0, + 555.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 78, + "image_id": 58, + "category_id": 1, + "segmentation": [ + [ + 164.0, + 103.99999999999999, + 323.0, + 103.99999999999999, + 323.0, + 303.0, + 164.0, + 303.0 + ] + ], + "area": 31641.0, + "bbox": [ + 164.0, + 103.99999999999999, + 159.0, + 199.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 79, + "image_id": 58, + "category_id": 1, + "segmentation": [ + [ + 700.0, + 18.0, + 892.0, + 18.0, + 892.0, + 248.99999999999997, + 700.0, + 248.99999999999997 + ] + ], + "area": 44351.99999999999, + "bbox": [ + 700.0, + 18.0, + 192.0, + 230.99999999999997 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 80, + "image_id": 58, + "category_id": 1, + "segmentation": [ + [ + 461.0, + 234.99999999999997, + 547.0, + 234.99999999999997, + 547.0, + 338.0, + 461.0, + 338.0 + ] + ], + "area": 8858.000000000002, + "bbox": [ + 461.0, + 234.99999999999997, + 86.0, + 102.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 81, + "image_id": 59, + "category_id": 30, + "segmentation": [ + [ + 315.99983999999995, + 96.00012000000001, + 530.0001599999999, + 96.00012000000001, + 530.0001599999999, + 365.00004, + 315.99983999999995, + 365.00004 + ] + ], + "area": 57566.06895997439, + "bbox": [ + 315.99983999999995, + 96.00012000000001, + 214.00032000000002, + 268.99992 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 82, + "image_id": 60, + "category_id": 30, + "segmentation": [ + [ + 504.0, + 57.99977999999999, + 706.9996799999999, + 57.99977999999999, + 706.9996799999999, + 341.99981999999994, + 504.0, + 341.99981999999994 + ] + ], + "area": 57651.91723998716, + "bbox": [ + 504.0, + 57.99977999999999, + 202.99968, + 284.00004 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 83, + "image_id": 61, + "category_id": 30, + "segmentation": [ + [ + 367.0003200000001, + 103.99995, + 630.0, + 103.99995, + 630.0, + 447.99993, + 367.0003200000001, + 447.99993 + ] + ], + "area": 90471.88466000637, + "bbox": [ + 367.0003200000001, + 103.99995, + 262.99967999999996, + 343.99998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 84, + "image_id": 62, + "category_id": 1, + "segmentation": [ + [ + 282.0, + 105.99999999999999, + 395.0, + 105.99999999999999, + 395.0, + 230.99999999999997, + 282.0, + 230.99999999999997 + ] + ], + "area": 14124.999999999998, + "bbox": [ + 282.0, + 105.99999999999999, + 113.0, + 125.00000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 85, + "image_id": 63, + "category_id": 30, + "segmentation": [ + [ + 286.00032000000004, + 100.99971, + 507.00000000000006, + 100.99971, + 507.00000000000006, + 364.99976999999996, + 286.00032000000004, + 364.99976999999996 + ] + ], + "area": 58343.92877998079, + "bbox": [ + 286.00032000000004, + 100.99971, + 220.99967999999998, + 264.00006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 86, + "image_id": 64, + "category_id": 1, + "segmentation": [ + [ + 49.00000000000001, + 87.0, + 167.99999999999997, + 87.0, + 167.99999999999997, + 231.0, + 49.00000000000001, + 231.0 + ] + ], + "area": 17135.999999999996, + "bbox": [ + 49.00000000000001, + 87.0, + 118.99999999999999, + 144.00000000000003 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 87, + "image_id": 65, + "category_id": 30, + "segmentation": [ + [ + 383.99952, + 40.00023, + 519.9998400000001, + 40.00023, + 519.9998400000001, + 169.00029, + 383.99952, + 169.00029 + ] + ], + "area": 17544.049440019207, + "bbox": [ + 383.99952, + 40.00023, + 136.00032, + 129.00006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 88, + "image_id": 66, + "category_id": 30, + "segmentation": [ + [ + 255.00048, + 117.99972, + 395.00016, + 117.99972, + 395.00016, + 255.99996, + 255.00048, + 255.99996 + ] + ], + "area": 19319.989439923196, + "bbox": [ + 255.00048, + 117.99972, + 139.99967999999998, + 138.00024 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 89, + "image_id": 67, + "category_id": 1, + "segmentation": [ + [ + 143.0, + 10.999999999999977, + 853.0, + 10.999999999999977, + 853.0, + 721.0, + 143.0, + 721.0 + ] + ], + "area": 504100.0, + "bbox": [ + 143.0, + 10.999999999999977, + 710.0, + 710.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 90, + "image_id": 68, + "category_id": 30, + "segmentation": [ + [ + 194.99952000000002, + 42.99992999999998, + 438.99983999999995, + 42.99992999999998, + 438.99983999999995, + 316.99971, + 194.99952000000002, + 316.99971 + ] + ], + "area": 66856.03399992958, + "bbox": [ + 194.99952000000002, + 42.99992999999998, + 244.00032, + 273.99978000000004 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 91, + "image_id": 68, + "category_id": 30, + "segmentation": [ + [ + 619.99968, + 181.99998, + 768.99936, + 181.99998, + 768.99936, + 408.99978, + 619.99968, + 408.99978 + ] + ], + "area": 33822.897560064004, + "bbox": [ + 619.99968, + 181.99998, + 148.99968, + 226.99980000000002 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 92, + "image_id": 69, + "category_id": 1, + "segmentation": [ + [ + 181.0, + 99.0, + 321.0, + 99.0, + 321.0, + 281.99999999999994, + 181.0, + 281.99999999999994 + ] + ], + "area": 25619.999999999993, + "bbox": [ + 181.0, + 99.0, + 140.0, + 182.99999999999997 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 93, + "image_id": 69, + "category_id": 1, + "segmentation": [ + [ + 390.0, + 23.99999999999999, + 533.0, + 23.99999999999999, + 533.0, + 215.99999999999997, + 390.0, + 215.99999999999997 + ] + ], + "area": 27455.999999999996, + "bbox": [ + 390.0, + 23.99999999999999, + 143.0, + 192.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 94, + "image_id": 69, + "category_id": 1, + "segmentation": [ + [ + 767.0, + 96.0, + 907.0, + 96.0, + 907.0, + 251.99999999999997, + 767.0, + 251.99999999999997 + ] + ], + "area": 21839.999999999996, + "bbox": [ + 767.0, + 96.0, + 140.0, + 156.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 95, + "image_id": 70, + "category_id": 30, + "segmentation": [ + [ + 358.99968, + 48.99987, + 609.99936, + 48.99987, + 609.99936, + 390.99969000000004, + 358.99968, + 390.99969000000004 + ] + ], + "area": 85841.84538005762, + "bbox": [ + 358.99968, + 48.99987, + 250.99968, + 341.99982 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 96, + "image_id": 71, + "category_id": 1, + "segmentation": [ + [ + 313.0, + 118.0, + 445.0, + 118.0, + 445.0, + 257.0, + 313.0, + 257.0 + ] + ], + "area": 18348.0, + "bbox": [ + 313.0, + 118.0, + 132.0, + 139.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 97, + "image_id": 72, + "category_id": 30, + "segmentation": [ + [ + 367.9996799999999, + 63.99998999999998, + 625.99968, + 63.99998999999998, + 625.99968, + 395.00001000000003, + 367.9996799999999, + 395.00001000000003 + ] + ], + "area": 85398.00516000006, + "bbox": [ + 367.9996799999999, + 63.99998999999998, + 258.0, + 331.00002 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 98, + "image_id": 73, + "category_id": 1, + "segmentation": [ + [ + 282.0, + 270.0, + 458.0, + 270.0, + 458.0, + 509.0, + 282.0, + 509.0 + ] + ], + "area": 42064.0, + "bbox": [ + 282.0, + 270.0, + 176.0, + 239.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 99, + "image_id": 74, + "category_id": 1, + "segmentation": [ + [ + 331.0, + 30.0, + 538.0, + 30.0, + 538.0, + 298.0, + 331.0, + 298.0 + ] + ], + "area": 55476.0, + "bbox": [ + 331.0, + 30.0, + 207.0, + 268.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 100, + "image_id": 75, + "category_id": 1, + "segmentation": [ + [ + 274.0, + 121.0, + 388.00000000000006, + 121.0, + 388.00000000000006, + 263.0, + 274.0, + 263.0 + ] + ], + "area": 16188.000000000007, + "bbox": [ + 274.0, + 121.0, + 114.0, + 142.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 101, + "image_id": 76, + "category_id": 30, + "segmentation": [ + [ + 427.99968, + 146.99961, + 546.99936, + 146.99961, + 546.99936, + 291.99987, + 427.99968, + 291.99987 + ] + ], + "area": 17254.9845399168, + "bbox": [ + 427.99968, + 146.99961, + 118.99968, + 145.00026 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 102, + "image_id": 76, + "category_id": 30, + "segmentation": [ + [ + 218.99952, + 84.00024000000002, + 341.99952, + 84.00024000000002, + 341.99952, + 219.00024000000002, + 218.99952, + 219.00024000000002 + ] + ], + "area": 16605.000000000004, + "bbox": [ + 218.99952, + 84.00024000000002, + 122.99999999999999, + 135.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 103, + "image_id": 76, + "category_id": 30, + "segmentation": [ + [ + 719.99952, + 42.00012000000001, + 903.99984, + 42.00012000000001, + 903.99984, + 234.00036, + 719.99952, + 234.00036 + ] + ], + "area": 35328.10560007679, + "bbox": [ + 719.99952, + 42.00012000000001, + 184.00032000000002, + 192.00024 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 104, + "image_id": 76, + "category_id": 30, + "segmentation": [ + [ + 6.999359999999992, + 129.00006000000002, + 145.99967999999998, + 129.00006000000002, + 145.99967999999998, + 356.99994, + 6.999359999999992, + 356.99994 + ] + ], + "area": 31692.05627996159, + "bbox": [ + 6.999359999999992, + 129.00006000000002, + 139.00032000000002, + 227.99988 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 105, + "image_id": 77, + "category_id": 1, + "segmentation": [ + [ + 484.0, + 263.0, + 766.0, + 263.0, + 766.0, + 689.9999999999999, + 484.0, + 689.9999999999999 + ] + ], + "area": 120413.99999999997, + "bbox": [ + 484.0, + 263.0, + 282.0, + 426.99999999999994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 106, + "image_id": 78, + "category_id": 1, + "segmentation": [ + [ + 342.0, + 137.0, + 454.00000000000006, + 137.0, + 454.00000000000006, + 266.0, + 342.0, + 266.0 + ] + ], + "area": 14448.000000000007, + "bbox": [ + 342.0, + 137.0, + 112.00000000000001, + 129.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 107, + "image_id": 79, + "category_id": 30, + "segmentation": [ + [ + 366.99984, + 104.99976000000002, + 503.00016, + 104.99976000000002, + 503.00016, + 241.99992, + 366.99984, + 241.99992 + ] + ], + "area": 18632.0656000512, + "bbox": [ + 366.99984, + 104.99976000000002, + 136.00032, + 137.00016 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 108, + "image_id": 80, + "category_id": 1, + "segmentation": [ + [ + 243.0, + 191.00000000000003, + 352.0, + 191.00000000000003, + 352.0, + 319.0, + 243.0, + 319.0 + ] + ], + "area": 13951.999999999996, + "bbox": [ + 243.0, + 191.00000000000003, + 109.0, + 128.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 109, + "image_id": 80, + "category_id": 1, + "segmentation": [ + [ + 517.0, + 151.0, + 645.0, + 151.0, + 645.0, + 311.99999999999994, + 517.0, + 311.99999999999994 + ] + ], + "area": 20607.999999999993, + "bbox": [ + 517.0, + 151.0, + 128.0, + 161.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 110, + "image_id": 81, + "category_id": 1, + "segmentation": [ + [ + 283.0, + 119.99999999999999, + 384.00000000000006, + 119.99999999999999, + 384.00000000000006, + 245.99999999999997, + 283.0, + 245.99999999999997 + ] + ], + "area": 12726.000000000005, + "bbox": [ + 283.0, + 119.99999999999999, + 101.00000000000001, + 126.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 111, + "image_id": 82, + "category_id": 1, + "segmentation": [ + [ + 291.0, + 107.00000000000001, + 383.00000000000006, + 107.00000000000001, + 383.00000000000006, + 217.0, + 291.0, + 217.0 + ] + ], + "area": 10120.000000000005, + "bbox": [ + 291.0, + 107.00000000000001, + 92.00000000000001, + 110.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 112, + "image_id": 83, + "category_id": 1, + "segmentation": [ + [ + 222.00000000000003, + 92.0, + 375.0, + 92.0, + 375.0, + 288.0, + 222.00000000000003, + 288.0 + ] + ], + "area": 29987.999999999993, + "bbox": [ + 222.00000000000003, + 92.0, + 153.0, + 196.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 113, + "image_id": 84, + "category_id": 1, + "segmentation": [ + [ + 308.0, + 131.99999999999997, + 442.0, + 131.99999999999997, + 442.0, + 296.99999999999994, + 308.0, + 296.99999999999994 + ] + ], + "area": 22109.999999999996, + "bbox": [ + 308.0, + 131.99999999999997, + 134.0, + 165.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 114, + "image_id": 85, + "category_id": 30, + "segmentation": [ + [ + 251.00016000000005, + 71.00028, + 462.99984, + 71.00028, + 462.99984, + 325.00008, + 251.00016000000005, + 325.00008 + ] + ], + "area": 53847.876320063995, + "bbox": [ + 251.00016000000005, + 71.00028, + 211.99968, + 253.9998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 115, + "image_id": 86, + "category_id": 1, + "segmentation": [ + [ + 291.0, + 165.0, + 384.0, + 165.0, + 384.0, + 274.0, + 291.0, + 274.0 + ] + ], + "area": 10137.0, + "bbox": [ + 291.0, + 165.0, + 93.0, + 109.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 116, + "image_id": 87, + "category_id": 30, + "segmentation": [ + [ + 267.99984, + 82.00008, + 554.0001599999999, + 82.00008, + 554.0001599999999, + 390.99996, + 267.99984, + 390.99996 + ] + ], + "area": 88374.06455996157, + "bbox": [ + 267.99984, + 82.00008, + 286.00032, + 308.99988 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 117, + "image_id": 87, + "category_id": 30, + "segmentation": [ + [ + 706.9996799999999, + 292.00014, + 846.0, + 292.00014, + 846.0, + 477.9999, + 706.9996799999999, + 477.9999 + ] + ], + "area": 25854.026159923225, + "bbox": [ + 706.9996799999999, + 292.00014, + 139.00032000000002, + 185.99975999999998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 118, + "image_id": 88, + "category_id": 1, + "segmentation": [ + [ + 206.0, + 90.00000000000003, + 293.99999999999994, + 90.00000000000003, + 293.99999999999994, + 195.0, + 206.0, + 195.0 + ] + ], + "area": 9239.99999999999, + "bbox": [ + 206.0, + 90.00000000000003, + 88.0, + 105.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 119, + "image_id": 89, + "category_id": 30, + "segmentation": [ + [ + 362.00016, + 82.99989000000001, + 627.99984, + 82.99989000000001, + 627.99984, + 331.99983000000003, + 362.00016, + 331.99983000000003 + ] + ], + "area": 66233.9043600192, + "bbox": [ + 362.00016, + 82.99989000000001, + 265.99968, + 248.99994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 120, + "image_id": 90, + "category_id": 30, + "segmentation": [ + [ + 165.0, + 105.00003, + 316.00032, + 105.00003, + 316.00032, + 343.00016999999997, + 165.0, + 343.00016999999997 + ] + ], + "area": 35938.09730004479, + "bbox": [ + 165.0, + 105.00003, + 151.00032, + 238.00014 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 121, + "image_id": 91, + "category_id": 30, + "segmentation": [ + [ + 445.99967999999996, + 80.99973, + 583.99968, + 80.99973, + 583.99968, + 277.99983, + 445.99967999999996, + 277.99983 + ] + ], + "area": 27186.013800000008, + "bbox": [ + 445.99967999999996, + 80.99973, + 138.0, + 197.0001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 122, + "image_id": 92, + "category_id": 1, + "segmentation": [ + [ + 282.0, + 110.0, + 391.0, + 110.0, + 391.0, + 253.0, + 282.0, + 253.0 + ] + ], + "area": 15587.0, + "bbox": [ + 282.0, + 110.0, + 109.0, + 143.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 123, + "image_id": 93, + "category_id": 30, + "segmentation": [ + [ + 260.00015999999994, + 103.00014, + 501.99984, + 103.00014, + 501.99984, + 373.00014000000004, + 260.00015999999994, + 373.00014000000004 + ] + ], + "area": 65339.91360000003, + "bbox": [ + 260.00015999999994, + 103.00014, + 241.99968, + 270.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 124, + "image_id": 94, + "category_id": 30, + "segmentation": [ + [ + 424.99968, + 132.00003, + 651.99936, + 132.00003, + 651.99936, + 290.00025000000005, + 424.99968, + 290.00025000000005 + ] + ], + "area": 35865.99937992961, + "bbox": [ + 424.99968, + 132.00003, + 226.99968, + 158.00021999999998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 125, + "image_id": 95, + "category_id": 1, + "segmentation": [ + [ + 1.0000000000000009, + 61.00000000000001, + 150.0, + 61.00000000000001, + 150.0, + 237.00000000000003, + 1.0000000000000009, + 237.00000000000003 + ] + ], + "area": 26224.000000000004, + "bbox": [ + 1.0000000000000009, + 61.00000000000001, + 149.0, + 176.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 126, + "image_id": 96, + "category_id": 30, + "segmentation": [ + [ + 204.00048, + 88.00001999999998, + 506.00016000000005, + 88.00001999999998, + 506.00016000000005, + 374.00022, + 204.00048, + 374.00022 + ] + ], + "area": 86371.96887993602, + "bbox": [ + 204.00048, + 88.00001999999998, + 301.99968, + 286.0002 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 127, + "image_id": 97, + "category_id": 1, + "segmentation": [ + [ + 279.00000000000006, + 139.99999999999997, + 407.0, + 139.99999999999997, + 407.0, + 288.0, + 279.00000000000006, + 288.0 + ] + ], + "area": 18943.999999999996, + "bbox": [ + 279.00000000000006, + 139.99999999999997, + 128.0, + 148.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 128, + "image_id": 98, + "category_id": 1, + "segmentation": [ + [ + 207.00000000000003, + 69.0, + 362.0, + 69.0, + 362.0, + 247.00000000000003, + 207.00000000000003, + 247.00000000000003 + ] + ], + "area": 27590.0, + "bbox": [ + 207.00000000000003, + 69.0, + 155.0, + 178.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 129, + "image_id": 99, + "category_id": 1, + "segmentation": [ + [ + 288.0, + 151.0, + 394.00000000000006, + 151.0, + 394.00000000000006, + 279.0, + 288.0, + 279.0 + ] + ], + "area": 13568.000000000007, + "bbox": [ + 288.0, + 151.0, + 106.00000000000001, + 128.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 130, + "image_id": 100, + "category_id": 30, + "segmentation": [ + [ + 285.0, + 96.00012000000001, + 529.99968, + 96.00012000000001, + 529.99968, + 342.00036000000006, + 285.0, + 342.00036000000006 + ] + ], + "area": 60269.98007992322, + "bbox": [ + 285.0, + 96.00012000000001, + 244.99967999999998, + 246.00024000000002 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 131, + "image_id": 101, + "category_id": 1, + "segmentation": [ + [ + 218.0, + 43.99999999999999, + 501.0, + 43.99999999999999, + 501.0, + 424.0, + 218.0, + 424.0 + ] + ], + "area": 107540.0, + "bbox": [ + 218.0, + 43.99999999999999, + 283.0, + 380.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 132, + "image_id": 103, + "category_id": 30, + "segmentation": [ + [ + 386.00016, + 137.9997, + 606.0004799999999, + 137.9997, + 606.0004799999999, + 355.99986, + 386.00016, + 355.99986 + ] + ], + "area": 47960.10496005119, + "bbox": [ + 386.00016, + 137.9997, + 220.00032000000002, + 218.00016 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 133, + "image_id": 104, + "category_id": 30, + "segmentation": [ + [ + 267.99935999999997, + 48.99986999999999, + 562.9996799999999, + 48.99986999999999, + 562.9996799999999, + 247.00005, + 267.99935999999997, + 247.00005 + ] + ], + "area": 58410.11646005759, + "bbox": [ + 267.99935999999997, + 48.99986999999999, + 295.00032, + 198.00018 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 134, + "image_id": 105, + "category_id": 1, + "segmentation": [ + [ + 314.0, + 49.000000000000014, + 551.0, + 49.000000000000014, + 551.0, + 372.0, + 314.0, + 372.0 + ] + ], + "area": 76551.0, + "bbox": [ + 314.0, + 49.000000000000014, + 237.0, + 323.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 135, + "image_id": 105, + "category_id": 1, + "segmentation": [ + [ + 602.0, + 65.00000000000001, + 835.0, + 65.00000000000001, + 835.0, + 370.0, + 602.0, + 370.0 + ] + ], + "area": 71065.0, + "bbox": [ + 602.0, + 65.00000000000001, + 233.0, + 305.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 136, + "image_id": 106, + "category_id": 30, + "segmentation": [ + [ + 393.0, + 100.99998, + 513.0, + 100.99998, + 513.0, + 261.99989999999997, + 393.0, + 261.99989999999997 + ] + ], + "area": 19319.990399999995, + "bbox": [ + 393.0, + 100.99998, + 120.0, + 160.99992 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 137, + "image_id": 107, + "category_id": 30, + "segmentation": [ + [ + 265.00032, + 122.99985000000001, + 415.00032, + 122.99985000000001, + 415.00032, + 234.99963000000002, + 265.00032, + 234.99963000000002 + ] + ], + "area": 16799.967, + "bbox": [ + 265.00032, + 122.99985000000001, + 150.0, + 111.99978 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 138, + "image_id": 108, + "category_id": 1, + "segmentation": [ + [ + 257.0, + 105.0, + 394.00000000000006, + 105.0, + 394.00000000000006, + 271.0, + 257.0, + 271.0 + ] + ], + "area": 22742.00000000001, + "bbox": [ + 257.0, + 105.0, + 137.0, + 166.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 139, + "image_id": 109, + "category_id": 1, + "segmentation": [ + [ + 238.0, + 197.00000000000003, + 818.0, + 197.00000000000003, + 818.0, + 942.0, + 238.0, + 942.0 + ] + ], + "area": 432100.0, + "bbox": [ + 238.0, + 197.00000000000003, + 580.0, + 745.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 140, + "image_id": 110, + "category_id": 1, + "segmentation": [ + [ + 291.0, + 113.99999999999996, + 778.0, + 113.99999999999996, + 778.0, + 745.9999999999999, + 291.0, + 745.9999999999999 + ] + ], + "area": 307783.99999999994, + "bbox": [ + 291.0, + 113.99999999999996, + 487.0, + 632.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 141, + "image_id": 111, + "category_id": 1, + "segmentation": [ + [ + 287.0, + 126.99999999999997, + 384.00000000000006, + 126.99999999999997, + 384.00000000000006, + 239.0, + 287.0, + 239.0 + ] + ], + "area": 10864.00000000001, + "bbox": [ + 287.0, + 126.99999999999997, + 97.00000000000001, + 112.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 142, + "image_id": 112, + "category_id": 1, + "segmentation": [ + [ + 306.0, + 97.00000000000001, + 732.0, + 97.00000000000001, + 732.0, + 669.0, + 306.0, + 669.0 + ] + ], + "area": 243672.0, + "bbox": [ + 306.0, + 97.00000000000001, + 426.0, + 572.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 143, + "image_id": 113, + "category_id": 1, + "segmentation": [ + [ + 388.0, + 203.0, + 524.0, + 203.0, + 524.0, + 367.0, + 388.0, + 367.0 + ] + ], + "area": 22304.0, + "bbox": [ + 388.0, + 203.0, + 136.0, + 164.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 144, + "image_id": 113, + "category_id": 1, + "segmentation": [ + [ + 793.0, + 211.00000000000003, + 928.0, + 211.00000000000003, + 928.0, + 382.0, + 793.0, + 382.0 + ] + ], + "area": 23084.999999999996, + "bbox": [ + 793.0, + 211.00000000000003, + 135.0, + 171.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 145, + "image_id": 114, + "category_id": 1, + "segmentation": [ + [ + 409.0, + 17.99999999999999, + 592.0, + 17.99999999999999, + 592.0, + 235.0, + 409.0, + 235.0 + ] + ], + "area": 39711.0, + "bbox": [ + 409.0, + 17.99999999999999, + 183.0, + 217.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 146, + "image_id": 115, + "category_id": 1, + "segmentation": [ + [ + 127.0, + 94.00000000000001, + 274.0, + 94.00000000000001, + 274.0, + 275.0, + 127.0, + 275.0 + ] + ], + "area": 26607.0, + "bbox": [ + 127.0, + 94.00000000000001, + 147.0, + 181.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 147, + "image_id": 116, + "category_id": 1, + "segmentation": [ + [ + 304.0, + 140.0, + 398.00000000000006, + 140.0, + 398.00000000000006, + 247.00000000000003, + 304.0, + 247.00000000000003 + ] + ], + "area": 10058.00000000001, + "bbox": [ + 304.0, + 140.0, + 94.0, + 107.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 148, + "image_id": 117, + "category_id": 1, + "segmentation": [ + [ + 197.0, + 58.99999999999999, + 317.0, + 58.99999999999999, + 317.0, + 226.0, + 197.0, + 226.0 + ] + ], + "area": 20040.0, + "bbox": [ + 197.0, + 58.99999999999999, + 120.0, + 167.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 149, + "image_id": 117, + "category_id": 1, + "segmentation": [ + [ + 310.0, + 150.0, + 419.0, + 150.0, + 419.0, + 297.0, + 310.0, + 297.0 + ] + ], + "area": 16023.0, + "bbox": [ + 310.0, + 150.0, + 109.0, + 147.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 150, + "image_id": 117, + "category_id": 1, + "segmentation": [ + [ + 449.0, + 111.99999999999997, + 523.0, + 111.99999999999997, + 523.0, + 256.0, + 449.0, + 256.0 + ] + ], + "area": 10656.000000000002, + "bbox": [ + 449.0, + 111.99999999999997, + 74.0, + 144.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 151, + "image_id": 117, + "category_id": 1, + "segmentation": [ + [ + 530.0, + 179.00000000000003, + 608.0, + 179.00000000000003, + 608.0, + 296.0, + 530.0, + 296.0 + ] + ], + "area": 9125.999999999998, + "bbox": [ + 530.0, + 179.00000000000003, + 78.0, + 117.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 152, + "image_id": 117, + "category_id": 1, + "segmentation": [ + [ + 625.0, + 133.99999999999997, + 711.0, + 133.99999999999997, + 711.0, + 269.99999999999994, + 625.0, + 269.99999999999994 + ] + ], + "area": 11695.999999999998, + "bbox": [ + 625.0, + 133.99999999999997, + 86.0, + 136.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 153, + "image_id": 118, + "category_id": 1, + "segmentation": [ + [ + 336.0, + 15.0, + 718.0, + 15.0, + 718.0, + 514.0, + 336.0, + 514.0 + ] + ], + "area": 190618.0, + "bbox": [ + 336.0, + 15.0, + 382.0, + 499.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 154, + "image_id": 119, + "category_id": 1, + "segmentation": [ + [ + 273.0, + 107.99999999999999, + 747.0, + 107.99999999999999, + 747.0, + 789.0, + 273.0, + 789.0 + ] + ], + "area": 322794.0, + "bbox": [ + 273.0, + 107.99999999999999, + 474.0, + 681.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 155, + "image_id": 120, + "category_id": 1, + "segmentation": [ + [ + 79.0, + 54.99999999999999, + 146.00000000000003, + 54.99999999999999, + 146.00000000000003, + 135.0, + 79.0, + 135.0 + ] + ], + "area": 5360.000000000002, + "bbox": [ + 79.0, + 54.99999999999999, + 67.0, + 80.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 156, + "image_id": 120, + "category_id": 1, + "segmentation": [ + [ + 283.00000000000006, + 42.0, + 345.0, + 42.0, + 345.0, + 120.0, + 283.00000000000006, + 120.0 + ] + ], + "area": 4835.999999999995, + "bbox": [ + 283.00000000000006, + 42.0, + 62.0, + 78.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 157, + "image_id": 121, + "category_id": 1, + "segmentation": [ + [ + 245.0, + 122.0, + 387.0, + 122.0, + 387.0, + 283.0, + 245.0, + 283.0 + ] + ], + "area": 22862.0, + "bbox": [ + 245.0, + 122.0, + 142.0, + 161.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 158, + "image_id": 122, + "category_id": 1, + "segmentation": [ + [ + 360.0, + 92.0, + 602.0, + 92.0, + 602.0, + 425.0, + 360.0, + 425.0 + ] + ], + "area": 80586.0, + "bbox": [ + 360.0, + 92.0, + 242.0, + 333.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 159, + "image_id": 123, + "category_id": 1, + "segmentation": [ + [ + 485.0, + 265.0, + 529.0, + 265.0, + 529.0, + 311.0, + 485.0, + 311.0 + ] + ], + "area": 2024.0, + "bbox": [ + 485.0, + 265.0, + 44.0, + 46.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 160, + "image_id": 123, + "category_id": 1, + "segmentation": [ + [ + 625.0, + 256.0, + 676.0, + 256.0, + 676.0, + 304.0, + 625.0, + 304.0 + ] + ], + "area": 2448.0, + "bbox": [ + 625.0, + 256.0, + 51.0, + 48.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 161, + "image_id": 123, + "category_id": 1, + "segmentation": [ + [ + 742.0, + 260.0, + 780.0, + 260.0, + 780.0, + 307.0, + 742.0, + 307.0 + ] + ], + "area": 1786.0, + "bbox": [ + 742.0, + 260.0, + 38.0, + 47.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 162, + "image_id": 124, + "category_id": 1, + "segmentation": [ + [ + 220.0, + 76.99999999999997, + 569.0, + 76.99999999999997, + 569.0, + 569.0, + 220.0, + 569.0 + ] + ], + "area": 171708.0, + "bbox": [ + 220.0, + 76.99999999999997, + 349.0, + 492.00000000000006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 163, + "image_id": 125, + "category_id": 1, + "segmentation": [ + [ + 78.0, + 8.000000000000014, + 748.0, + 8.000000000000014, + 748.0, + 730.0, + 78.0, + 730.0 + ] + ], + "area": 483740.0, + "bbox": [ + 78.0, + 8.000000000000014, + 670.0, + 722.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 164, + "image_id": 126, + "category_id": 1, + "segmentation": [ + [ + 299.0, + 104.00000000000003, + 425.0, + 104.00000000000003, + 425.0, + 290.00000000000006, + 299.0, + 290.00000000000006 + ] + ], + "area": 23436.000000000004, + "bbox": [ + 299.0, + 104.00000000000003, + 126.0, + 186.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 165, + "image_id": 126, + "category_id": 1, + "segmentation": [ + [ + 477.0, + 32.000000000000014, + 617.0, + 32.000000000000014, + 617.0, + 209.0, + 477.0, + 209.0 + ] + ], + "area": 24780.0, + "bbox": [ + 477.0, + 32.000000000000014, + 140.0, + 177.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 166, + "image_id": 127, + "category_id": 1, + "segmentation": [ + [ + 120.0, + 31.000000000000007, + 251.0, + 31.000000000000007, + 251.0, + 172.0, + 120.0, + 172.0 + ] + ], + "area": 18471.0, + "bbox": [ + 120.0, + 31.000000000000007, + 131.0, + 141.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 167, + "image_id": 127, + "category_id": 1, + "segmentation": [ + [ + 362.0, + 173.0, + 463.0, + 173.0, + 463.0, + 308.0, + 362.0, + 308.0 + ] + ], + "area": 13635.0, + "bbox": [ + 362.0, + 173.0, + 101.0, + 135.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 168, + "image_id": 127, + "category_id": 1, + "segmentation": [ + [ + 531.0, + 172.00000000000003, + 649.0, + 172.00000000000003, + 649.0, + 300.0, + 531.0, + 300.0 + ] + ], + "area": 15103.999999999996, + "bbox": [ + 531.0, + 172.00000000000003, + 118.0, + 128.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 169, + "image_id": 127, + "category_id": 1, + "segmentation": [ + [ + 792.0, + 112.0, + 911.0, + 112.0, + 911.0, + 252.99999999999997, + 792.0, + 252.99999999999997 + ] + ], + "area": 16778.999999999996, + "bbox": [ + 792.0, + 112.0, + 119.0, + 141.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 170, + "image_id": 128, + "category_id": 1, + "segmentation": [ + [ + 65.0, + 69.99999999999999, + 158.0, + 69.99999999999999, + 158.0, + 179.0, + 65.0, + 179.0 + ] + ], + "area": 10137.000000000002, + "bbox": [ + 65.0, + 69.99999999999999, + 93.0, + 109.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 171, + "image_id": 128, + "category_id": 1, + "segmentation": [ + [ + 225.0, + 128.99999999999997, + 299.0, + 128.99999999999997, + 299.0, + 215.99999999999997, + 225.0, + 215.99999999999997 + ] + ], + "area": 6438.0, + "bbox": [ + 225.0, + 128.99999999999997, + 74.0, + 87.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 172, + "image_id": 128, + "category_id": 1, + "segmentation": [ + [ + 336.0, + 146.0, + 426.0, + 146.0, + 426.0, + 250.99999999999997, + 336.0, + 250.99999999999997 + ] + ], + "area": 9449.999999999998, + "bbox": [ + 336.0, + 146.0, + 90.0, + 105.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 173, + "image_id": 128, + "category_id": 1, + "segmentation": [ + [ + 453.0, + 81.0, + 525.0, + 81.0, + 525.0, + 174.0, + 453.0, + 174.0 + ] + ], + "area": 6696.0, + "bbox": [ + 453.0, + 81.0, + 72.0, + 92.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 174, + "image_id": 128, + "category_id": 1, + "segmentation": [ + [ + 538.0, + 136.0, + 626.0, + 136.0, + 626.0, + 249.99999999999997, + 538.0, + 249.99999999999997 + ] + ], + "area": 10031.999999999998, + "bbox": [ + 538.0, + 136.0, + 88.0, + 114.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 175, + "image_id": 128, + "category_id": 1, + "segmentation": [ + [ + 684.0, + 131.99999999999997, + 773.0, + 131.99999999999997, + 773.0, + 239.99999999999997, + 684.0, + 239.99999999999997 + ] + ], + "area": 9612.0, + "bbox": [ + 684.0, + 131.99999999999997, + 89.0, + 107.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 176, + "image_id": 128, + "category_id": 1, + "segmentation": [ + [ + 847.0, + 104.0, + 938.0, + 104.0, + 938.0, + 224.0, + 847.0, + 224.0 + ] + ], + "area": 10920.0, + "bbox": [ + 847.0, + 104.0, + 91.0, + 119.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 177, + "image_id": 129, + "category_id": 1, + "segmentation": [ + [ + 320.0, + 123.0, + 453.0, + 123.0, + 453.0, + 316.0, + 320.0, + 316.0 + ] + ], + "area": 25669.0, + "bbox": [ + 320.0, + 123.0, + 133.0, + 193.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 178, + "image_id": 129, + "category_id": 1, + "segmentation": [ + [ + 554.0, + 43.0, + 718.0, + 43.0, + 718.0, + 239.0, + 554.0, + 239.0 + ] + ], + "area": 32144.0, + "bbox": [ + 554.0, + 43.0, + 164.0, + 196.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 179, + "image_id": 130, + "category_id": 1, + "segmentation": [ + [ + 247.00000000000003, + 197.0, + 347.0, + 197.0, + 347.0, + 312.00000000000006, + 247.00000000000003, + 312.00000000000006 + ] + ], + "area": 11500.000000000002, + "bbox": [ + 247.00000000000003, + 197.0, + 100.0, + 115.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 180, + "image_id": 130, + "category_id": 1, + "segmentation": [ + [ + 535.0, + 187.00000000000003, + 643.0, + 187.00000000000003, + 643.0, + 324.0, + 535.0, + 324.0 + ] + ], + "area": 14795.999999999996, + "bbox": [ + 535.0, + 187.00000000000003, + 108.0, + 137.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 181, + "image_id": 130, + "category_id": 1, + "segmentation": [ + [ + 755.0, + 56.99999999999999, + 905.0, + 56.99999999999999, + 905.0, + 275.0, + 755.0, + 275.0 + ] + ], + "area": 32700.0, + "bbox": [ + 755.0, + 56.99999999999999, + 150.0, + 218.00000000000003 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 182, + "image_id": 131, + "category_id": 1, + "segmentation": [ + [ + 287.0, + 152.0, + 407.0, + 152.0, + 407.0, + 287.0, + 287.0, + 287.0 + ] + ], + "area": 16200.0, + "bbox": [ + 287.0, + 152.0, + 120.0, + 135.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 183, + "image_id": 132, + "category_id": 1, + "segmentation": [ + [ + 395.00000000000006, + 140.00000000000003, + 527.0, + 140.00000000000003, + 527.0, + 326.0, + 395.00000000000006, + 326.0 + ] + ], + "area": 24551.999999999985, + "bbox": [ + 395.00000000000006, + 140.00000000000003, + 132.0, + 186.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 184, + "image_id": 133, + "category_id": 1, + "segmentation": [ + [ + 335.0, + 93.0, + 455.0, + 93.0, + 455.0, + 222.0, + 335.0, + 222.0 + ] + ], + "area": 15480.0, + "bbox": [ + 335.0, + 93.0, + 120.0, + 129.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 185, + "image_id": 134, + "category_id": 1, + "segmentation": [ + [ + 234.0, + 82.00000000000001, + 387.0, + 82.00000000000001, + 387.0, + 259.0, + 234.0, + 259.0 + ] + ], + "area": 27081.0, + "bbox": [ + 234.0, + 82.00000000000001, + 153.0, + 177.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 186, + "image_id": 134, + "category_id": 1, + "segmentation": [ + [ + 566.0, + 75.0, + 708.0, + 75.0, + 708.0, + 247.0, + 566.0, + 247.0 + ] + ], + "area": 24424.0, + "bbox": [ + 566.0, + 75.0, + 142.0, + 172.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 187, + "image_id": 134, + "category_id": 1, + "segmentation": [ + [ + 830.0, + 96.00000000000001, + 905.0, + 96.00000000000001, + 905.0, + 176.00000000000003, + 830.0, + 176.00000000000003 + ] + ], + "area": 6000.000000000001, + "bbox": [ + 830.0, + 96.00000000000001, + 75.0, + 80.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 188, + "image_id": 134, + "category_id": 1, + "segmentation": [ + [ + 75.0, + 133.0, + 143.0, + 133.0, + 143.0, + 190.99999999999997, + 75.0, + 190.99999999999997 + ] + ], + "area": 3943.999999999998, + "bbox": [ + 75.0, + 133.0, + 68.0, + 58.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 189, + "image_id": 135, + "category_id": 1, + "segmentation": [ + [ + 352.0, + 90.00000000000003, + 613.0, + 90.00000000000003, + 613.0, + 426.0, + 352.0, + 426.0 + ] + ], + "area": 87696.0, + "bbox": [ + 352.0, + 90.00000000000003, + 261.0, + 336.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 190, + "image_id": 136, + "category_id": 1, + "segmentation": [ + [ + 268.0, + 192.0, + 370.0, + 192.0, + 370.0, + 305.0, + 268.0, + 305.0 + ] + ], + "area": 11526.0, + "bbox": [ + 268.0, + 192.0, + 102.00000000000001, + 113.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 191, + "image_id": 137, + "category_id": 1, + "segmentation": [ + [ + 231.0, + 74.00000000000001, + 314.0, + 74.00000000000001, + 314.0, + 177.00000000000003, + 231.0, + 177.00000000000003 + ] + ], + "area": 8549.000000000002, + "bbox": [ + 231.0, + 74.00000000000001, + 83.0, + 103.00000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 192, + "image_id": 138, + "category_id": 1, + "segmentation": [ + [ + 385.0, + 58.999999999999986, + 624.0, + 58.999999999999986, + 624.0, + 398.0, + 385.0, + 398.0 + ] + ], + "area": 81021.0, + "bbox": [ + 385.0, + 58.999999999999986, + 239.0, + 339.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 193, + "image_id": 139, + "category_id": 1, + "segmentation": [ + [ + 309.0, + 3.999999999999998, + 361.00000000000006, + 3.999999999999998, + 361.00000000000006, + 55.99999999999999, + 309.0, + 55.99999999999999 + ] + ], + "area": 2704.0000000000027, + "bbox": [ + 309.0, + 3.999999999999998, + 52.00000000000001, + 52.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 194, + "image_id": 140, + "category_id": 1, + "segmentation": [ + [ + 173.0, + 117.0, + 623.0, + 117.0, + 623.0, + 682.0, + 173.0, + 682.0 + ] + ], + "area": 254250.0, + "bbox": [ + 173.0, + 117.0, + 450.0, + 565.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 195, + "image_id": 141, + "category_id": 1, + "segmentation": [ + [ + 283.0, + 107.99999999999999, + 726.0, + 107.99999999999999, + 726.0, + 690.9999999999999, + 283.0, + 690.9999999999999 + ] + ], + "area": 258268.99999999994, + "bbox": [ + 283.0, + 107.99999999999999, + 443.0, + 583.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 196, + "image_id": 142, + "category_id": 1, + "segmentation": [ + [ + 305.0, + 134.0, + 412.0, + 134.0, + 412.0, + 257.0, + 305.0, + 257.0 + ] + ], + "area": 13161.0, + "bbox": [ + 305.0, + 134.0, + 107.00000000000001, + 122.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 197, + "image_id": 143, + "category_id": 1, + "segmentation": [ + [ + 185.0, + 84.99999999999999, + 401.0, + 84.99999999999999, + 401.0, + 395.0, + 185.0, + 395.0 + ] + ], + "area": 66960.0, + "bbox": [ + 185.0, + 84.99999999999999, + 216.0, + 310.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 198, + "image_id": 144, + "category_id": 1, + "segmentation": [ + [ + 300.0, + 121.0, + 427.0, + 121.0, + 427.0, + 262.0, + 300.0, + 262.0 + ] + ], + "area": 17907.0, + "bbox": [ + 300.0, + 121.0, + 127.00000000000001, + 141.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 199, + "image_id": 145, + "category_id": 1, + "segmentation": [ + [ + 175.0, + 122.99999999999997, + 847.0, + 122.99999999999997, + 847.0, + 913.9999999999999, + 175.0, + 913.9999999999999 + ] + ], + "area": 531551.9999999999, + "bbox": [ + 175.0, + 122.99999999999997, + 672.0, + 791.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 200, + "image_id": 146, + "category_id": 1, + "segmentation": [ + [ + 94.0, + 145.00000000000003, + 175.0, + 145.00000000000003, + 175.0, + 228.00000000000006, + 94.0, + 228.00000000000006 + ] + ], + "area": 6723.000000000003, + "bbox": [ + 94.0, + 145.00000000000003, + 81.0, + 83.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 201, + "image_id": 146, + "category_id": 1, + "segmentation": [ + [ + 243.0, + 174.00000000000003, + 314.0, + 174.00000000000003, + 314.0, + 264.0, + 243.0, + 264.0 + ] + ], + "area": 6389.999999999998, + "bbox": [ + 243.0, + 174.00000000000003, + 71.0, + 90.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 202, + "image_id": 146, + "category_id": 1, + "segmentation": [ + [ + 385.0, + 206.0, + 454.0, + 206.0, + 454.0, + 284.0, + 385.0, + 284.0 + ] + ], + "area": 5382.0, + "bbox": [ + 385.0, + 206.0, + 69.0, + 78.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 203, + "image_id": 146, + "category_id": 1, + "segmentation": [ + [ + 515.0, + 160.0, + 599.0, + 160.0, + 599.0, + 245.0, + 515.0, + 245.0 + ] + ], + "area": 7140.0, + "bbox": [ + 515.0, + 160.0, + 84.0, + 85.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 204, + "image_id": 146, + "category_id": 1, + "segmentation": [ + [ + 672.0, + 108.0, + 748.0, + 108.0, + 748.0, + 196.0, + 672.0, + 196.0 + ] + ], + "area": 6688.0, + "bbox": [ + 672.0, + 108.0, + 76.0, + 88.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 205, + "image_id": 146, + "category_id": 1, + "segmentation": [ + [ + 829.0, + 89.0, + 900.0, + 89.0, + 900.0, + 172.00000000000003, + 829.0, + 172.00000000000003 + ] + ], + "area": 5893.000000000002, + "bbox": [ + 829.0, + 89.0, + 71.0, + 83.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 206, + "image_id": 147, + "category_id": 1, + "segmentation": [ + [ + 109.00000000000001, + 39.999999999999986, + 214.0, + 39.999999999999986, + 214.0, + 170.0, + 109.00000000000001, + 170.0 + ] + ], + "area": 13649.999999999998, + "bbox": [ + 109.00000000000001, + 39.999999999999986, + 105.0, + 130.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 207, + "image_id": 147, + "category_id": 1, + "segmentation": [ + [ + 208.0, + 146.99999999999997, + 281.0, + 146.99999999999997, + 281.0, + 236.0, + 208.0, + 236.0 + ] + ], + "area": 6497.000000000002, + "bbox": [ + 208.0, + 146.99999999999997, + 73.0, + 88.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 208, + "image_id": 147, + "category_id": 1, + "segmentation": [ + [ + 352.00000000000006, + 110.0, + 463.0, + 110.0, + 463.0, + 215.99999999999997, + 352.00000000000006, + 215.99999999999997 + ] + ], + "area": 11765.99999999999, + "bbox": [ + 352.00000000000006, + 110.0, + 111.0, + 106.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 209, + "image_id": 148, + "category_id": 1, + "segmentation": [ + [ + 250.0, + 150.0, + 646.0, + 150.0, + 646.0, + 638.0, + 250.0, + 638.0 + ] + ], + "area": 193248.0, + "bbox": [ + 250.0, + 150.0, + 396.0, + 488.00000000000006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 210, + "image_id": 149, + "category_id": 1, + "segmentation": [ + [ + 244.0, + 153.0, + 351.0, + 153.0, + 351.0, + 262.0, + 244.0, + 262.0 + ] + ], + "area": 11663.0, + "bbox": [ + 244.0, + 153.0, + 107.0, + 108.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 211, + "image_id": 149, + "category_id": 1, + "segmentation": [ + [ + 417.0, + 132.99999999999997, + 526.0, + 132.99999999999997, + 526.0, + 267.0, + 417.0, + 267.0 + ] + ], + "area": 14606.000000000004, + "bbox": [ + 417.0, + 132.99999999999997, + 109.0, + 134.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 212, + "image_id": 149, + "category_id": 1, + "segmentation": [ + [ + 593.0, + 19.999999999999996, + 678.0, + 19.999999999999996, + 678.0, + 125.99999999999997, + 593.0, + 125.99999999999997 + ] + ], + "area": 9009.999999999998, + "bbox": [ + 593.0, + 19.999999999999996, + 85.0, + 106.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 213, + "image_id": 149, + "category_id": 1, + "segmentation": [ + [ + 706.0, + 147.99999999999997, + 806.0, + 147.99999999999997, + 806.0, + 272.99999999999994, + 706.0, + 272.99999999999994 + ] + ], + "area": 12499.999999999996, + "bbox": [ + 706.0, + 147.99999999999997, + 100.0, + 125.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 214, + "image_id": 150, + "category_id": 1, + "segmentation": [ + [ + 243.0, + 92.0, + 358.0, + 92.0, + 358.0, + 223.0, + 243.0, + 223.0 + ] + ], + "area": 15065.0, + "bbox": [ + 243.0, + 92.0, + 115.0, + 131.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 215, + "image_id": 151, + "category_id": 1, + "segmentation": [ + [ + 241.0, + 70.00000000000001, + 706.0, + 70.00000000000001, + 706.0, + 640.0, + 241.0, + 640.0 + ] + ], + "area": 265050.0, + "bbox": [ + 241.0, + 70.00000000000001, + 465.0, + 570.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 216, + "image_id": 152, + "category_id": 1, + "segmentation": [ + [ + 305.0, + 118.99999999999999, + 688.0, + 118.99999999999999, + 688.0, + 619.0, + 305.0, + 619.0 + ] + ], + "area": 191500.0, + "bbox": [ + 305.0, + 118.99999999999999, + 383.0, + 500.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 217, + "image_id": 153, + "category_id": 1, + "segmentation": [ + [ + 186.0, + 50.0, + 333.00000000000006, + 50.0, + 333.00000000000006, + 215.0, + 186.0, + 215.0 + ] + ], + "area": 24255.00000000001, + "bbox": [ + 186.0, + 50.0, + 147.0, + 165.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 218, + "image_id": 153, + "category_id": 1, + "segmentation": [ + [ + 758.9999999999999, + 11.0, + 960.0, + 11.0, + 960.0, + 223.0, + 758.9999999999999, + 223.0 + ] + ], + "area": 42612.00000000002, + "bbox": [ + 758.9999999999999, + 11.0, + 201.0, + 212.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 219, + "image_id": 154, + "category_id": 1, + "segmentation": [ + [ + 271.0, + 115.99999999999999, + 382.0, + 115.99999999999999, + 382.0, + 236.0, + 271.0, + 236.0 + ] + ], + "area": 13320.000000000002, + "bbox": [ + 271.0, + 115.99999999999999, + 111.00000000000001, + 120.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 220, + "image_id": 155, + "category_id": 1, + "segmentation": [ + [ + 209.0, + 48.000000000000014, + 784.0, + 48.000000000000014, + 784.0, + 828.0000000000001, + 209.0, + 828.0000000000001 + ] + ], + "area": 448500.00000000006, + "bbox": [ + 209.0, + 48.000000000000014, + 575.0, + 780.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 221, + "image_id": 156, + "category_id": 1, + "segmentation": [ + [ + 383.0, + 71.00000000000001, + 636.0, + 71.00000000000001, + 636.0, + 368.99999999999994, + 383.0, + 368.99999999999994 + ] + ], + "area": 75393.99999999999, + "bbox": [ + 383.0, + 71.00000000000001, + 253.0, + 297.99999999999994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 222, + "image_id": 157, + "category_id": 1, + "segmentation": [ + [ + 299.0, + 122.0, + 430.0, + 122.0, + 430.0, + 266.0, + 299.0, + 266.0 + ] + ], + "area": 18864.0, + "bbox": [ + 299.0, + 122.0, + 131.0, + 144.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 223, + "image_id": 158, + "category_id": 1, + "segmentation": [ + [ + 311.0, + 152.0, + 436.0, + 152.0, + 436.0, + 292.0, + 311.0, + 292.0 + ] + ], + "area": 17500.0, + "bbox": [ + 311.0, + 152.0, + 125.0, + 140.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 224, + "image_id": 159, + "category_id": 1, + "segmentation": [ + [ + 411.0, + 174.0, + 498.0, + 174.0, + 498.0, + 304.0, + 411.0, + 304.0 + ] + ], + "area": 11310.0, + "bbox": [ + 411.0, + 174.0, + 87.0, + 130.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 225, + "image_id": 159, + "category_id": 1, + "segmentation": [ + [ + 524.0, + 56.99999999999999, + 650.0, + 56.99999999999999, + 650.0, + 196.99999999999997, + 524.0, + 196.99999999999997 + ] + ], + "area": 17639.999999999996, + "bbox": [ + 524.0, + 56.99999999999999, + 126.0, + 140.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 226, + "image_id": 160, + "category_id": 1, + "segmentation": [ + [ + 353.0, + 93.0, + 566.0, + 93.0, + 566.0, + 389.99999999999994, + 353.0, + 389.99999999999994 + ] + ], + "area": 63260.999999999985, + "bbox": [ + 353.0, + 93.0, + 213.0, + 297.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 227, + "image_id": 161, + "category_id": 1, + "segmentation": [ + [ + 301.0, + 143.0, + 428.00000000000006, + 143.0, + 428.00000000000006, + 309.0, + 301.0, + 309.0 + ] + ], + "area": 21082.00000000001, + "bbox": [ + 301.0, + 143.0, + 127.00000000000001, + 166.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 228, + "image_id": 162, + "category_id": 1, + "segmentation": [ + [ + 119.0, + 12.999999999999986, + 508.0, + 12.999999999999986, + 508.0, + 550.0, + 119.0, + 550.0 + ] + ], + "area": 208893.0, + "bbox": [ + 119.0, + 12.999999999999986, + 389.0, + 537.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 229, + "image_id": 163, + "category_id": 1, + "segmentation": [ + [ + 279.00000000000006, + 175.00000000000003, + 397.0, + 175.00000000000003, + 397.0, + 312.0, + 279.00000000000006, + 312.0 + ] + ], + "area": 16165.999999999989, + "bbox": [ + 279.00000000000006, + 175.00000000000003, + 118.0, + 137.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 230, + "image_id": 164, + "category_id": 1, + "segmentation": [ + [ + 214.00000000000003, + 132.0, + 345.0, + 132.0, + 345.0, + 288.0, + 214.00000000000003, + 288.0 + ] + ], + "area": 20435.999999999996, + "bbox": [ + 214.00000000000003, + 132.0, + 131.0, + 156.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 231, + "image_id": 165, + "category_id": 1, + "segmentation": [ + [ + 130.0, + 3.0000000000000027, + 259.0, + 3.0000000000000027, + 259.0, + 131.0, + 130.0, + 131.0 + ] + ], + "area": 16512.0, + "bbox": [ + 130.0, + 3.0000000000000027, + 129.0, + 128.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 232, + "image_id": 165, + "category_id": 1, + "segmentation": [ + [ + 252.0, + 85.0, + 348.0, + 85.0, + 348.0, + 189.0, + 252.0, + 189.0 + ] + ], + "area": 9984.0, + "bbox": [ + 252.0, + 85.0, + 96.0, + 104.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 233, + "image_id": 166, + "category_id": 1, + "segmentation": [ + [ + 297.0, + 142.00000000000003, + 334.0, + 142.00000000000003, + 334.0, + 191.0, + 297.0, + 191.0 + ] + ], + "area": 1812.9999999999989, + "bbox": [ + 297.0, + 142.00000000000003, + 37.0, + 48.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 234, + "image_id": 166, + "category_id": 1, + "segmentation": [ + [ + 238.00000000000003, + 164.0, + 277.0, + 164.0, + 277.0, + 206.0, + 238.00000000000003, + 206.0 + ] + ], + "area": 1637.9999999999989, + "bbox": [ + 238.00000000000003, + 164.0, + 39.0, + 42.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 235, + "image_id": 166, + "category_id": 1, + "segmentation": [ + [ + 177.00000000000003, + 145.0, + 216.0, + 145.0, + 216.0, + 191.0, + 177.00000000000003, + 191.0 + ] + ], + "area": 1793.9999999999986, + "bbox": [ + 177.00000000000003, + 145.0, + 39.0, + 46.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 236, + "image_id": 166, + "category_id": 1, + "segmentation": [ + [ + 103.00000000000001, + 174.0, + 147.0, + 174.0, + 147.0, + 217.0, + 103.00000000000001, + 217.0 + ] + ], + "area": 1891.9999999999993, + "bbox": [ + 103.00000000000001, + 174.0, + 44.0, + 43.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 237, + "image_id": 167, + "category_id": 1, + "segmentation": [ + [ + 502.0, + 101.99999999999999, + 725.0, + 101.99999999999999, + 725.0, + 344.0, + 502.0, + 344.0 + ] + ], + "area": 53966.0, + "bbox": [ + 502.0, + 101.99999999999999, + 223.0, + 242.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 238, + "image_id": 168, + "category_id": 1, + "segmentation": [ + [ + 383.0, + 213.99999999999994, + 650.0, + 213.99999999999994, + 650.0, + 619.0, + 383.0, + 619.0 + ] + ], + "area": 108135.00000000001, + "bbox": [ + 383.0, + 213.99999999999994, + 267.0, + 405.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 239, + "image_id": 169, + "category_id": 1, + "segmentation": [ + [ + 301.00000000000006, + 143.0, + 395.00000000000006, + 143.0, + 395.00000000000006, + 263.0, + 301.00000000000006, + 263.0 + ] + ], + "area": 11280.0, + "bbox": [ + 301.00000000000006, + 143.0, + 94.0, + 120.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 240, + "image_id": 170, + "category_id": 1, + "segmentation": [ + [ + 284.00000000000006, + 83.00000000000001, + 427.0, + 83.00000000000001, + 427.0, + 227.0, + 284.00000000000006, + 227.0 + ] + ], + "area": 20591.999999999993, + "bbox": [ + 284.00000000000006, + 83.00000000000001, + 143.0, + 144.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 241, + "image_id": 171, + "category_id": 1, + "segmentation": [ + [ + 337.0, + 151.00000000000003, + 434.0, + 151.00000000000003, + 434.0, + 281.0, + 337.0, + 281.0 + ] + ], + "area": 12609.999999999996, + "bbox": [ + 337.0, + 151.00000000000003, + 97.0, + 130.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 242, + "image_id": 171, + "category_id": 1, + "segmentation": [ + [ + 632.0, + 143.0, + 743.0000000000001, + 143.0, + 743.0000000000001, + 283.00000000000006, + 632.0, + 283.00000000000006 + ] + ], + "area": 15540.000000000022, + "bbox": [ + 632.0, + 143.0, + 110.99999999999999, + 140.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 243, + "image_id": 172, + "category_id": 1, + "segmentation": [ + [ + 247.00000000000003, + 171.99999999999997, + 386.0, + 171.99999999999997, + 386.0, + 300.0, + 247.00000000000003, + 300.0 + ] + ], + "area": 17792.0, + "bbox": [ + 247.00000000000003, + 171.99999999999997, + 139.0, + 128.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 244, + "image_id": 173, + "category_id": 1, + "segmentation": [ + [ + 250.0, + 110.0, + 737.0, + 110.0, + 737.0, + 682.0, + 250.0, + 682.0 + ] + ], + "area": 278564.0, + "bbox": [ + 250.0, + 110.0, + 487.0, + 572.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 245, + "image_id": 174, + "category_id": 1, + "segmentation": [ + [ + 230.0, + 129.0, + 325.0, + 129.0, + 325.0, + 233.0, + 230.0, + 233.0 + ] + ], + "area": 9880.0, + "bbox": [ + 230.0, + 129.0, + 95.0, + 104.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 246, + "image_id": 174, + "category_id": 1, + "segmentation": [ + [ + 388.0, + 188.0, + 435.0, + 188.0, + 435.0, + 244.00000000000003, + 388.0, + 244.00000000000003 + ] + ], + "area": 2632.0000000000014, + "bbox": [ + 388.0, + 188.0, + 47.0, + 56.00000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 247, + "image_id": 174, + "category_id": 1, + "segmentation": [ + [ + 692.9999999999999, + 106.00000000000001, + 760.0, + 106.00000000000001, + 760.0, + 173.00000000000003, + 692.9999999999999, + 173.00000000000003 + ] + ], + "area": 4489.000000000008, + "bbox": [ + 692.9999999999999, + 106.00000000000001, + 67.0, + 67.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 248, + "image_id": 175, + "category_id": 1, + "segmentation": [ + [ + 491.0, + 38.00000000000002, + 815.0, + 38.00000000000002, + 815.0, + 424.0, + 491.0, + 424.0 + ] + ], + "area": 125064.0, + "bbox": [ + 491.0, + 38.00000000000002, + 324.0, + 386.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 249, + "image_id": 176, + "category_id": 1, + "segmentation": [ + [ + 422.0, + 83.0, + 691.0, + 83.0, + 691.0, + 405.99999999999994, + 422.0, + 405.99999999999994 + ] + ], + "area": 86886.99999999999, + "bbox": [ + 422.0, + 83.0, + 269.0, + 323.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 250, + "image_id": 177, + "category_id": 1, + "segmentation": [ + [ + 276.0, + 92.99999999999999, + 797.0, + 92.99999999999999, + 797.0, + 865.9999999999999, + 276.0, + 865.9999999999999 + ] + ], + "area": 402732.99999999994, + "bbox": [ + 276.0, + 92.99999999999999, + 521.0, + 772.9999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 251, + "image_id": 178, + "category_id": 1, + "segmentation": [ + [ + 307.0, + 114.0, + 433.0, + 114.0, + 433.0, + 245.99999999999997, + 307.0, + 245.99999999999997 + ] + ], + "area": 16631.999999999996, + "bbox": [ + 307.0, + 114.0, + 126.00000000000001, + 132.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 252, + "image_id": 179, + "category_id": 1, + "segmentation": [ + [ + 203.0, + 226.0, + 693.0, + 226.0, + 693.0, + 941.0, + 203.0, + 941.0 + ] + ], + "area": 350350.0, + "bbox": [ + 203.0, + 226.0, + 490.0, + 715.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 253, + "image_id": 180, + "category_id": 1, + "segmentation": [ + [ + 270.0, + 94.00000000000001, + 392.0, + 94.00000000000001, + 392.0, + 233.0, + 270.0, + 233.0 + ] + ], + "area": 16958.0, + "bbox": [ + 270.0, + 94.00000000000001, + 122.00000000000001, + 139.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 254, + "image_id": 181, + "category_id": 1, + "segmentation": [ + [ + 263.0, + 138.0, + 385.0, + 138.0, + 385.0, + 280.0, + 263.0, + 280.0 + ] + ], + "area": 17324.0, + "bbox": [ + 263.0, + 138.0, + 122.00000000000001, + 142.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 255, + "image_id": 182, + "category_id": 1, + "segmentation": [ + [ + 324.0, + 84.00000000000001, + 439.0, + 84.00000000000001, + 439.0, + 242.0, + 324.0, + 242.0 + ] + ], + "area": 18170.0, + "bbox": [ + 324.0, + 84.00000000000001, + 115.0, + 158.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 256, + "image_id": 183, + "category_id": 1, + "segmentation": [ + [ + 392.0, + 60.000000000000014, + 739.0, + 60.000000000000014, + 739.0, + 484.0, + 392.0, + 484.0 + ] + ], + "area": 147128.0, + "bbox": [ + 392.0, + 60.000000000000014, + 347.0, + 424.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 257, + "image_id": 184, + "category_id": 1, + "segmentation": [ + [ + 52.00000000000001, + 74.00000000000001, + 191.0, + 74.00000000000001, + 191.0, + 265.0, + 52.00000000000001, + 265.0 + ] + ], + "area": 26549.0, + "bbox": [ + 52.00000000000001, + 74.00000000000001, + 139.0, + 191.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 258, + "image_id": 185, + "category_id": 1, + "segmentation": [ + [ + 255.0, + 88.0, + 393.0, + 88.0, + 393.0, + 248.99999999999997, + 255.0, + 248.99999999999997 + ] + ], + "area": 22217.999999999996, + "bbox": [ + 255.0, + 88.0, + 138.0, + 161.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 259, + "image_id": 186, + "category_id": 1, + "segmentation": [ + [ + 422.0, + 532.0, + 666.0, + 532.0, + 666.0, + 791.0, + 422.0, + 791.0 + ] + ], + "area": 63196.0, + "bbox": [ + 422.0, + 532.0, + 244.0, + 259.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 260, + "image_id": 187, + "category_id": 1, + "segmentation": [ + [ + 342.0, + 117.00000000000003, + 424.0, + 117.00000000000003, + 424.0, + 218.0, + 342.0, + 218.0 + ] + ], + "area": 8281.999999999998, + "bbox": [ + 342.0, + 117.00000000000003, + 82.0, + 101.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 261, + "image_id": 188, + "category_id": 1, + "segmentation": [ + [ + 376.0, + 148.0, + 473.0, + 148.0, + 473.0, + 273.0, + 376.0, + 273.0 + ] + ], + "area": 12125.0, + "bbox": [ + 376.0, + 148.0, + 97.0, + 125.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 262, + "image_id": 188, + "category_id": 1, + "segmentation": [ + [ + 520.0000000000001, + 160.0, + 626.0, + 160.0, + 626.0, + 293.0, + 520.0000000000001, + 293.0 + ] + ], + "area": 14097.999999999985, + "bbox": [ + 520.0000000000001, + 160.0, + 106.0, + 133.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 263, + "image_id": 189, + "category_id": 1, + "segmentation": [ + [ + 177.00000000000003, + 79.0, + 238.00000000000003, + 79.0, + 238.00000000000003, + 155.0, + 177.00000000000003, + 155.0 + ] + ], + "area": 4636.0, + "bbox": [ + 177.00000000000003, + 79.0, + 61.0, + 76.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 264, + "image_id": 190, + "category_id": 1, + "segmentation": [ + [ + 303.0, + 83.00000000000001, + 621.0, + 83.00000000000001, + 621.0, + 471.99999999999994, + 303.0, + 471.99999999999994 + ] + ], + "area": 123701.99999999999, + "bbox": [ + 303.0, + 83.00000000000001, + 318.0, + 389.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 265, + "image_id": 191, + "category_id": 1, + "segmentation": [ + [ + 329.0, + 95.0, + 700.0, + 95.0, + 700.0, + 641.0, + 329.0, + 641.0 + ] + ], + "area": 202566.0, + "bbox": [ + 329.0, + 95.0, + 371.0, + 546.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 266, + "image_id": 192, + "category_id": 1, + "segmentation": [ + [ + 143.0, + 71.0, + 212.0, + 71.0, + 212.0, + 160.0, + 143.0, + 160.0 + ] + ], + "area": 6141.0, + "bbox": [ + 143.0, + 71.0, + 69.0, + 89.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 267, + "image_id": 192, + "category_id": 1, + "segmentation": [ + [ + 337.0, + 132.0, + 402.0, + 132.0, + 402.0, + 202.0, + 337.0, + 202.0 + ] + ], + "area": 4550.0, + "bbox": [ + 337.0, + 132.0, + 65.0, + 70.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 268, + "image_id": 192, + "category_id": 1, + "segmentation": [ + [ + 543.0, + 127.0, + 602.0, + 127.0, + 602.0, + 210.00000000000003, + 543.0, + 210.00000000000003 + ] + ], + "area": 4897.000000000002, + "bbox": [ + 543.0, + 127.0, + 59.0, + 83.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 269, + "image_id": 192, + "category_id": 1, + "segmentation": [ + [ + 721.0, + 99.0, + 790.0, + 99.0, + 790.0, + 185.0, + 721.0, + 185.0 + ] + ], + "area": 5934.0, + "bbox": [ + 721.0, + 99.0, + 69.0, + 86.00000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 270, + "image_id": 193, + "category_id": 1, + "segmentation": [ + [ + 302.0, + 43.99999999999999, + 483.0, + 43.99999999999999, + 483.0, + 285.0, + 302.0, + 285.0 + ] + ], + "area": 43621.0, + "bbox": [ + 302.0, + 43.99999999999999, + 181.0, + 241.00000000000003 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 271, + "image_id": 193, + "category_id": 1, + "segmentation": [ + [ + 541.0, + 245.0, + 725.0, + 245.0, + 725.0, + 483.00000000000006, + 541.0, + 483.00000000000006 + ] + ], + "area": 43792.00000000001, + "bbox": [ + 541.0, + 245.0, + 184.0, + 238.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 272, + "image_id": 194, + "category_id": 1, + "segmentation": [ + [ + 267.0, + 155.99999999999997, + 396.0, + 155.99999999999997, + 396.0, + 300.0, + 267.0, + 300.0 + ] + ], + "area": 18576.000000000004, + "bbox": [ + 267.0, + 155.99999999999997, + 129.0, + 144.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 273, + "image_id": 195, + "category_id": 1, + "segmentation": [ + [ + 292.0, + 125.99999999999997, + 429.00000000000006, + 125.99999999999997, + 429.00000000000006, + 270.0, + 292.0, + 270.0 + ] + ], + "area": 19728.00000000001, + "bbox": [ + 292.0, + 125.99999999999997, + 137.0, + 144.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 274, + "image_id": 196, + "category_id": 1, + "segmentation": [ + [ + 148.0, + 6.000000000000003, + 289.0, + 6.000000000000003, + 289.0, + 195.0, + 148.0, + 195.0 + ] + ], + "area": 26649.0, + "bbox": [ + 148.0, + 6.000000000000003, + 141.0, + 189.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 275, + "image_id": 196, + "category_id": 1, + "segmentation": [ + [ + 323.0, + 53.0, + 478.0, + 53.0, + 478.0, + 224.0, + 323.0, + 224.0 + ] + ], + "area": 26505.0, + "bbox": [ + 323.0, + 53.0, + 155.0, + 171.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 276, + "image_id": 196, + "category_id": 1, + "segmentation": [ + [ + 810.0, + 17.999999999999996, + 983.0, + 17.999999999999996, + 983.0, + 225.0, + 810.0, + 225.0 + ] + ], + "area": 35811.0, + "bbox": [ + 810.0, + 17.999999999999996, + 173.0, + 207.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 277, + "image_id": 197, + "category_id": 1, + "segmentation": [ + [ + 252.0, + 114.99999999999999, + 384.0, + 114.99999999999999, + 384.0, + 268.0, + 252.0, + 268.0 + ] + ], + "area": 20196.0, + "bbox": [ + 252.0, + 114.99999999999999, + 132.0, + 153.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 278, + "image_id": 198, + "category_id": 1, + "segmentation": [ + [ + 288.0, + 58.00000000000001, + 655.0, + 58.00000000000001, + 655.0, + 491.99999999999994, + 288.0, + 491.99999999999994 + ] + ], + "area": 159277.99999999997, + "bbox": [ + 288.0, + 58.00000000000001, + 367.0, + 434.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 279, + "image_id": 199, + "category_id": 1, + "segmentation": [ + [ + 226.0, + 89.00000000000001, + 385.0, + 89.00000000000001, + 385.0, + 252.0, + 226.0, + 252.0 + ] + ], + "area": 25917.0, + "bbox": [ + 226.0, + 89.00000000000001, + 159.0, + 163.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 280, + "image_id": 199, + "category_id": 1, + "segmentation": [ + [ + 741.0, + 18.999999999999996, + 959.9999999999999, + 18.999999999999996, + 959.9999999999999, + 258.0, + 741.0, + 258.0 + ] + ], + "area": 52340.99999999997, + "bbox": [ + 741.0, + 18.999999999999996, + 219.0, + 239.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 281, + "image_id": 200, + "category_id": 1, + "segmentation": [ + [ + 274.0, + 98.0, + 431.0, + 98.0, + 431.0, + 266.0, + 274.0, + 266.0 + ] + ], + "area": 26376.0, + "bbox": [ + 274.0, + 98.0, + 157.0, + 168.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 282, + "image_id": 201, + "category_id": 1, + "segmentation": [ + [ + 297.0, + 158.0, + 392.0, + 158.0, + 392.0, + 276.0, + 297.0, + 276.0 + ] + ], + "area": 11210.0, + "bbox": [ + 297.0, + 158.0, + 95.0, + 118.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 283, + "image_id": 202, + "category_id": 1, + "segmentation": [ + [ + 283.0, + 95.0, + 402.0, + 95.0, + 402.0, + 236.0, + 283.0, + 236.0 + ] + ], + "area": 16779.0, + "bbox": [ + 283.0, + 95.0, + 119.0, + 141.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 284, + "image_id": 203, + "category_id": 1, + "segmentation": [ + [ + 316.0, + 150.0, + 843.0, + 150.0, + 843.0, + 742.0, + 316.0, + 742.0 + ] + ], + "area": 311984.0, + "bbox": [ + 316.0, + 150.0, + 527.0, + 592.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 285, + "image_id": 204, + "category_id": 1, + "segmentation": [ + [ + 241.0, + 10.999999999999993, + 469.0, + 10.999999999999993, + 469.0, + 264.0, + 241.0, + 264.0 + ] + ], + "area": 57684.0, + "bbox": [ + 241.0, + 10.999999999999993, + 228.0, + 253.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 286, + "image_id": 205, + "category_id": 1, + "segmentation": [ + [ + 203.99999999999997, + 108.99999999999999, + 363.0, + 108.99999999999999, + 363.0, + 321.0, + 203.99999999999997, + 321.0 + ] + ], + "area": 33708.00000000001, + "bbox": [ + 203.99999999999997, + 108.99999999999999, + 159.0, + 212.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 287, + "image_id": 205, + "category_id": 1, + "segmentation": [ + [ + 657.0000000000001, + 119.0, + 816.0, + 119.0, + 816.0, + 316.00000000000006, + 657.0000000000001, + 316.00000000000006 + ] + ], + "area": 31322.999999999985, + "bbox": [ + 657.0000000000001, + 119.0, + 159.0, + 197.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 288, + "image_id": 206, + "category_id": 1, + "segmentation": [ + [ + 274.00000000000006, + 64.0, + 407.0, + 64.0, + 407.0, + 236.0, + 274.00000000000006, + 236.0 + ] + ], + "area": 22875.99999999999, + "bbox": [ + 274.00000000000006, + 64.0, + 133.0, + 172.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 289, + "image_id": 207, + "category_id": 1, + "segmentation": [ + [ + 381.99999999999994, + 83.0, + 595.0, + 83.0, + 595.0, + 352.0, + 381.99999999999994, + 352.0 + ] + ], + "area": 57297.000000000015, + "bbox": [ + 381.99999999999994, + 83.0, + 213.0, + 269.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 290, + "image_id": 208, + "category_id": 1, + "segmentation": [ + [ + 46.0, + 131.0, + 99.99999999999999, + 131.0, + 99.99999999999999, + 201.0, + 46.0, + 201.0 + ] + ], + "area": 3779.999999999999, + "bbox": [ + 46.0, + 131.0, + 54.0, + 69.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 291, + "image_id": 208, + "category_id": 1, + "segmentation": [ + [ + 128.0, + 155.0, + 185.0, + 155.0, + 185.0, + 208.0, + 128.0, + 208.0 + ] + ], + "area": 3021.0, + "bbox": [ + 128.0, + 155.0, + 57.0, + 53.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 292, + "image_id": 208, + "category_id": 1, + "segmentation": [ + [ + 265.0, + 159.00000000000003, + 294.00000000000006, + 159.00000000000003, + 294.00000000000006, + 194.0, + 265.0, + 194.0 + ] + ], + "area": 1015.0000000000011, + "bbox": [ + 265.0, + 159.00000000000003, + 29.0, + 34.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 293, + "image_id": 209, + "category_id": 1, + "segmentation": [ + [ + 280.00000000000006, + 96.0, + 409.00000000000006, + 96.0, + 409.00000000000006, + 234.0, + 280.00000000000006, + 234.0 + ] + ], + "area": 17802.0, + "bbox": [ + 280.00000000000006, + 96.0, + 129.0, + 138.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 294, + "image_id": 210, + "category_id": 1, + "segmentation": [ + [ + 258.0, + 164.99999999999997, + 390.0, + 164.99999999999997, + 390.0, + 315.99999999999994, + 258.0, + 315.99999999999994 + ] + ], + "area": 19931.999999999996, + "bbox": [ + 258.0, + 164.99999999999997, + 132.0, + 151.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 295, + "image_id": 211, + "category_id": 1, + "segmentation": [ + [ + 101.0, + 108.00000000000001, + 299.0, + 108.00000000000001, + 299.0, + 411.0, + 101.0, + 411.0 + ] + ], + "area": 59994.0, + "bbox": [ + 101.0, + 108.00000000000001, + 198.0, + 303.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 296, + "image_id": 211, + "category_id": 1, + "segmentation": [ + [ + 332.0, + 125.0, + 552.0, + 125.0, + 552.0, + 399.0, + 332.0, + 399.0 + ] + ], + "area": 60280.0, + "bbox": [ + 332.0, + 125.0, + 220.0, + 274.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 297, + "image_id": 211, + "category_id": 1, + "segmentation": [ + [ + 732.0, + 46.99999999999999, + 945.0, + 46.99999999999999, + 945.0, + 338.0, + 732.0, + 338.0 + ] + ], + "area": 61983.0, + "bbox": [ + 732.0, + 46.99999999999999, + 213.0, + 291.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 298, + "image_id": 212, + "category_id": 1, + "segmentation": [ + [ + 276.0, + 43.999999999999986, + 728.0, + 43.999999999999986, + 728.0, + 529.0, + 276.0, + 529.0 + ] + ], + "area": 219220.0, + "bbox": [ + 276.0, + 43.999999999999986, + 452.0, + 485.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 299, + "image_id": 213, + "category_id": 1, + "segmentation": [ + [ + 205.0, + 94.00000000000001, + 604.0, + 94.00000000000001, + 604.0, + 576.0, + 205.0, + 576.0 + ] + ], + "area": 192318.0, + "bbox": [ + 205.0, + 94.00000000000001, + 399.0, + 481.99999999999994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 300, + "image_id": 214, + "category_id": 1, + "segmentation": [ + [ + 246.0, + 77.00000000000001, + 766.0, + 77.00000000000001, + 766.0, + 663.0, + 246.0, + 663.0 + ] + ], + "area": 304720.0, + "bbox": [ + 246.0, + 77.00000000000001, + 520.0, + 586.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 301, + "image_id": 215, + "category_id": 1, + "segmentation": [ + [ + 319.0, + 133.0, + 739.0, + 133.0, + 739.0, + 645.0, + 319.0, + 645.0 + ] + ], + "area": 215040.0, + "bbox": [ + 319.0, + 133.0, + 420.0, + 512.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 302, + "image_id": 216, + "category_id": 1, + "segmentation": [ + [ + 300.00000000000006, + 139.0, + 411.0000000000001, + 139.0, + 411.0000000000001, + 263.0, + 300.00000000000006, + 263.0 + ] + ], + "area": 13764.000000000007, + "bbox": [ + 300.00000000000006, + 139.0, + 111.00000000000001, + 123.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 303, + "image_id": 217, + "category_id": 1, + "segmentation": [ + [ + 462.0, + 108.99999999999999, + 620.0, + 108.99999999999999, + 620.0, + 347.0, + 462.0, + 347.0 + ] + ], + "area": 37604.0, + "bbox": [ + 462.0, + 108.99999999999999, + 158.0, + 238.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 304, + "image_id": 218, + "category_id": 1, + "segmentation": [ + [ + 307.0, + 149.0, + 439.00000000000006, + 149.0, + 439.00000000000006, + 304.0, + 307.0, + 304.0 + ] + ], + "area": 20460.000000000007, + "bbox": [ + 307.0, + 149.0, + 132.0, + 155.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 305, + "image_id": 219, + "category_id": 1, + "segmentation": [ + [ + 499.0, + 37.999999999999986, + 826.0, + 37.999999999999986, + 826.0, + 510.0, + 499.0, + 510.0 + ] + ], + "area": 154344.0, + "bbox": [ + 499.0, + 37.999999999999986, + 327.0, + 472.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 306, + "image_id": 220, + "category_id": 1, + "segmentation": [ + [ + 262.0, + 125.00000000000001, + 403.0, + 125.00000000000001, + 403.0, + 294.0, + 262.0, + 294.0 + ] + ], + "area": 23829.0, + "bbox": [ + 262.0, + 125.00000000000001, + 141.0, + 169.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 307, + "image_id": 221, + "category_id": 1, + "segmentation": [ + [ + 307.0, + 151.0, + 420.0, + 151.0, + 420.0, + 281.0, + 307.0, + 281.0 + ] + ], + "area": 14690.0, + "bbox": [ + 307.0, + 151.0, + 113.0, + 130.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 308, + "image_id": 222, + "category_id": 1, + "segmentation": [ + [ + 391.0, + 106.0, + 602.0, + 106.0, + 602.0, + 365.0, + 391.0, + 365.0 + ] + ], + "area": 54649.0, + "bbox": [ + 391.0, + 106.0, + 211.0, + 259.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 309, + "image_id": 223, + "category_id": 1, + "segmentation": [ + [ + 237.00000000000003, + 113.99999999999999, + 397.0, + 113.99999999999999, + 397.0, + 299.0, + 237.00000000000003, + 299.0 + ] + ], + "area": 29599.999999999996, + "bbox": [ + 237.00000000000003, + 113.99999999999999, + 160.0, + 185.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 310, + "image_id": 224, + "category_id": 1, + "segmentation": [ + [ + 307.0, + 88.99999999999999, + 715.0, + 88.99999999999999, + 715.0, + 615.0000000000001, + 307.0, + 615.0000000000001 + ] + ], + "area": 214608.00000000006, + "bbox": [ + 307.0, + 88.99999999999999, + 408.0, + 526.0000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 311, + "image_id": 225, + "category_id": 1, + "segmentation": [ + [ + 554.0, + 3.0000000000000053, + 732.0, + 3.0000000000000053, + 732.0, + 227.0, + 554.0, + 227.0 + ] + ], + "area": 39872.0, + "bbox": [ + 554.0, + 3.0000000000000053, + 178.0, + 223.99999999999997 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 312, + "image_id": 226, + "category_id": 1, + "segmentation": [ + [ + 279.0, + 125.00000000000001, + 398.00000000000006, + 125.00000000000001, + 398.00000000000006, + 262.0, + 279.0, + 262.0 + ] + ], + "area": 16303.000000000007, + "bbox": [ + 279.0, + 125.00000000000001, + 119.0, + 137.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 313, + "image_id": 227, + "category_id": 1, + "segmentation": [ + [ + 369.0, + 60.00000000000002, + 607.0, + 60.00000000000002, + 607.0, + 437.0, + 369.0, + 437.0 + ] + ], + "area": 89726.0, + "bbox": [ + 369.0, + 60.00000000000002, + 238.0, + 377.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 314, + "image_id": 228, + "category_id": 1, + "segmentation": [ + [ + 225.0, + 313.0, + 351.0, + 313.0, + 351.0, + 442.0, + 225.0, + 442.0 + ] + ], + "area": 16254.0, + "bbox": [ + 225.0, + 313.0, + 126.0, + 129.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 315, + "image_id": 228, + "category_id": 1, + "segmentation": [ + [ + 428.0, + 264.0, + 541.0, + 264.0, + 541.0, + 403.0, + 428.0, + 403.0 + ] + ], + "area": 15707.0, + "bbox": [ + 428.0, + 264.0, + 113.0, + 139.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 316, + "image_id": 228, + "category_id": 1, + "segmentation": [ + [ + 597.0, + 247.00000000000003, + 721.0, + 247.00000000000003, + 721.0, + 403.0, + 597.0, + 403.0 + ] + ], + "area": 19343.999999999996, + "bbox": [ + 597.0, + 247.00000000000003, + 124.0, + 156.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 317, + "image_id": 228, + "category_id": 1, + "segmentation": [ + [ + 780.0, + 220.0, + 948.0, + 220.0, + 948.0, + 414.00000000000006, + 780.0, + 414.00000000000006 + ] + ], + "area": 32592.00000000001, + "bbox": [ + 780.0, + 220.0, + 168.0, + 194.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 318, + "image_id": 229, + "category_id": 1, + "segmentation": [ + [ + 378.0, + 168.00000000000003, + 658.0, + 168.00000000000003, + 658.0, + 487.0, + 378.0, + 487.0 + ] + ], + "area": 89320.0, + "bbox": [ + 378.0, + 168.00000000000003, + 280.0, + 319.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 319, + "image_id": 230, + "category_id": 1, + "segmentation": [ + [ + 247.0, + 110.00000000000003, + 764.0, + 110.00000000000003, + 764.0, + 745.0, + 247.0, + 745.0 + ] + ], + "area": 328295.0, + "bbox": [ + 247.0, + 110.00000000000003, + 517.0, + 635.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 320, + "image_id": 231, + "category_id": 1, + "segmentation": [ + [ + 253.0, + 39.99999999999999, + 400.0, + 39.99999999999999, + 400.0, + 189.0, + 253.0, + 189.0 + ] + ], + "area": 21903.0, + "bbox": [ + 253.0, + 39.99999999999999, + 147.0, + 149.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 321, + "image_id": 231, + "category_id": 1, + "segmentation": [ + [ + 492.0, + 22.999999999999996, + 636.0, + 22.999999999999996, + 636.0, + 200.0, + 492.0, + 200.0 + ] + ], + "area": 25488.0, + "bbox": [ + 492.0, + 22.999999999999996, + 144.0, + 177.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 322, + "image_id": 232, + "category_id": 1, + "segmentation": [ + [ + 246.0, + 162.99999999999997, + 376.0, + 162.99999999999997, + 376.0, + 309.99999999999994, + 246.0, + 309.99999999999994 + ] + ], + "area": 19109.999999999996, + "bbox": [ + 246.0, + 162.99999999999997, + 130.0, + 147.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 323, + "image_id": 233, + "category_id": 1, + "segmentation": [ + [ + 327.0, + 36.0, + 706.0, + 36.0, + 706.0, + 451.00000000000006, + 327.0, + 451.00000000000006 + ] + ], + "area": 157285.00000000003, + "bbox": [ + 327.0, + 36.0, + 379.0, + 415.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 324, + "image_id": 234, + "category_id": 1, + "segmentation": [ + [ + 246.99999999999997, + 17.00000000000001, + 443.99999999999994, + 17.00000000000001, + 443.99999999999994, + 266.0, + 246.99999999999997, + 266.0 + ] + ], + "area": 49052.99999999999, + "bbox": [ + 246.99999999999997, + 17.00000000000001, + 197.0, + 249.00000000000003 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 325, + "image_id": 235, + "category_id": 1, + "segmentation": [ + [ + 268.0, + 137.0, + 402.0, + 137.0, + 402.0, + 277.0, + 268.0, + 277.0 + ] + ], + "area": 18760.0, + "bbox": [ + 268.0, + 137.0, + 134.0, + 140.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 326, + "image_id": 236, + "category_id": 1, + "segmentation": [ + [ + 152.0, + 20.0, + 643.0, + 20.0, + 643.0, + 633.0, + 152.0, + 633.0 + ] + ], + "area": 300983.0, + "bbox": [ + 152.0, + 20.0, + 491.0, + 613.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 327, + "image_id": 237, + "category_id": 1, + "segmentation": [ + [ + 290.0, + 92.0, + 417.0, + 92.0, + 417.0, + 228.0, + 290.0, + 228.0 + ] + ], + "area": 17272.0, + "bbox": [ + 290.0, + 92.0, + 127.00000000000001, + 136.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 328, + "image_id": 238, + "category_id": 1, + "segmentation": [ + [ + 196.0, + 96.0, + 778.0, + 96.0, + 778.0, + 825.0, + 196.0, + 825.0 + ] + ], + "area": 424278.0, + "bbox": [ + 196.0, + 96.0, + 582.0, + 729.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 329, + "image_id": 239, + "category_id": 1, + "segmentation": [ + [ + 326.0, + 139.99999999999997, + 429.0, + 139.99999999999997, + 429.0, + 252.0, + 326.0, + 252.0 + ] + ], + "area": 11536.000000000004, + "bbox": [ + 326.0, + 139.99999999999997, + 103.0, + 112.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 330, + "image_id": 240, + "category_id": 1, + "segmentation": [ + [ + 235.00000000000003, + 184.0, + 286.00000000000006, + 184.0, + 286.00000000000006, + 240.99999999999997, + 235.00000000000003, + 240.99999999999997 + ] + ], + "area": 2907.0, + "bbox": [ + 235.00000000000003, + 184.0, + 51.00000000000001, + 57.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 331, + "image_id": 240, + "category_id": 1, + "segmentation": [ + [ + 319.0, + 171.99999999999997, + 377.00000000000006, + 171.99999999999997, + 377.00000000000006, + 236.0, + 319.0, + 236.0 + ] + ], + "area": 3712.0000000000055, + "bbox": [ + 319.0, + 171.99999999999997, + 58.0, + 64.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 332, + "image_id": 241, + "category_id": 1, + "segmentation": [ + [ + 291.0, + 79.00000000000001, + 398.00000000000006, + 79.00000000000001, + 398.00000000000006, + 217.0, + 291.0, + 217.0 + ] + ], + "area": 14766.000000000007, + "bbox": [ + 291.0, + 79.00000000000001, + 107.00000000000001, + 138.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 333, + "image_id": 242, + "category_id": 1, + "segmentation": [ + [ + 182.0, + 193.00000000000006, + 803.0, + 193.00000000000006, + 803.0, + 1026.0, + 182.0, + 1026.0 + ] + ], + "area": 517293.0, + "bbox": [ + 182.0, + 193.00000000000006, + 621.0, + 833.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 334, + "image_id": 243, + "category_id": 1, + "segmentation": [ + [ + 290.00000000000006, + 151.0, + 426.0000000000001, + 151.0, + 426.0000000000001, + 314.0, + 290.00000000000006, + 314.0 + ] + ], + "area": 22168.00000000001, + "bbox": [ + 290.00000000000006, + 151.0, + 136.0, + 163.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 335, + "image_id": 244, + "category_id": 1, + "segmentation": [ + [ + 377.0, + 86.0, + 733.0, + 86.0, + 733.0, + 464.0, + 377.0, + 464.0 + ] + ], + "area": 134568.0, + "bbox": [ + 377.0, + 86.0, + 356.0, + 378.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 336, + "image_id": 245, + "category_id": 1, + "segmentation": [ + [ + 256.0, + 121.0, + 393.00000000000006, + 121.0, + 393.00000000000006, + 269.0, + 256.0, + 269.0 + ] + ], + "area": 20276.000000000007, + "bbox": [ + 256.0, + 121.0, + 137.0, + 148.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 337, + "image_id": 246, + "category_id": 1, + "segmentation": [ + [ + 60.0, + 531.0, + 260.0, + 531.0, + 260.0, + 773.0, + 60.0, + 773.0 + ] + ], + "area": 48400.0, + "bbox": [ + 60.0, + 531.0, + 200.0, + 242.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 338, + "image_id": 246, + "category_id": 1, + "segmentation": [ + [ + 657.0, + 134.0, + 888.0, + 134.0, + 888.0, + 403.0, + 657.0, + 403.0 + ] + ], + "area": 62139.0, + "bbox": [ + 657.0, + 134.0, + 231.0, + 269.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 339, + "image_id": 247, + "category_id": 1, + "segmentation": [ + [ + 293.0, + 134.00000000000003, + 538.0, + 134.00000000000003, + 538.0, + 416.00000000000006, + 293.0, + 416.00000000000006 + ] + ], + "area": 69090.0, + "bbox": [ + 293.0, + 134.00000000000003, + 245.0, + 282.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 340, + "image_id": 248, + "category_id": 1, + "segmentation": [ + [ + 275.00000000000006, + 143.0, + 391.0000000000001, + 143.0, + 391.0000000000001, + 281.0, + 275.00000000000006, + 281.0 + ] + ], + "area": 16008.000000000007, + "bbox": [ + 275.00000000000006, + 143.0, + 116.00000000000001, + 138.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 341, + "image_id": 249, + "category_id": 1, + "segmentation": [ + [ + 289.0, + 61.99999999999998, + 655.0, + 61.99999999999998, + 655.0, + 576.0, + 289.0, + 576.0 + ] + ], + "area": 188124.0, + "bbox": [ + 289.0, + 61.99999999999998, + 366.0, + 514.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 342, + "image_id": 250, + "category_id": 1, + "segmentation": [ + [ + 98.0, + 210.0, + 209.0, + 210.0, + 209.0, + 358.0, + 98.0, + 358.0 + ] + ], + "area": 16428.0, + "bbox": [ + 98.0, + 210.0, + 111.0, + 148.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 343, + "image_id": 250, + "category_id": 1, + "segmentation": [ + [ + 316.0, + 228.0, + 435.0, + 228.0, + 435.0, + 356.0, + 316.0, + 356.0 + ] + ], + "area": 15232.0, + "bbox": [ + 316.0, + 228.0, + 119.0, + 128.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 344, + "image_id": 250, + "category_id": 1, + "segmentation": [ + [ + 552.0, + 144.99999999999997, + 677.0, + 144.99999999999997, + 677.0, + 302.0, + 552.0, + 302.0 + ] + ], + "area": 19625.000000000004, + "bbox": [ + 552.0, + 144.99999999999997, + 125.0, + 157.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 345, + "image_id": 250, + "category_id": 1, + "segmentation": [ + [ + 827.0, + 143.99999999999997, + 960.0, + 143.99999999999997, + 960.0, + 325.99999999999994, + 827.0, + 325.99999999999994 + ] + ], + "area": 24205.999999999996, + "bbox": [ + 827.0, + 143.99999999999997, + 133.0, + 182.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 346, + "image_id": 251, + "category_id": 1, + "segmentation": [ + [ + 422.0, + 226.0, + 553.0, + 226.0, + 553.0, + 402.0, + 422.0, + 402.0 + ] + ], + "area": 23056.0, + "bbox": [ + 422.0, + 226.0, + 131.0, + 176.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 347, + "image_id": 252, + "category_id": 1, + "segmentation": [ + [ + 315.0, + 99.0, + 438.0, + 99.0, + 438.0, + 247.00000000000003, + 315.0, + 247.00000000000003 + ] + ], + "area": 18204.000000000004, + "bbox": [ + 315.0, + 99.0, + 123.0, + 148.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 348, + "image_id": 253, + "category_id": 1, + "segmentation": [ + [ + 137.0, + 130.0, + 482.0, + 130.0, + 482.0, + 591.0000000000001, + 137.0, + 591.0000000000001 + ] + ], + "area": 159045.00000000003, + "bbox": [ + 137.0, + 130.0, + 345.0, + 461.00000000000006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 349, + "image_id": 253, + "category_id": 1, + "segmentation": [ + [ + 602.0, + 184.00000000000003, + 969.0, + 184.00000000000003, + 969.0, + 641.0, + 602.0, + 641.0 + ] + ], + "area": 167719.0, + "bbox": [ + 602.0, + 184.00000000000003, + 367.0, + 456.99999999999994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 350, + "image_id": 254, + "category_id": 1, + "segmentation": [ + [ + 279.0, + 117.00000000000001, + 416.0, + 117.00000000000001, + 416.0, + 283.0, + 279.0, + 283.0 + ] + ], + "area": 22742.0, + "bbox": [ + 279.0, + 117.00000000000001, + 137.0, + 166.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 351, + "image_id": 255, + "category_id": 1, + "segmentation": [ + [ + 196.0, + 11.000000000000014, + 380.0, + 11.000000000000014, + 380.0, + 280.0, + 196.0, + 280.0 + ] + ], + "area": 49496.0, + "bbox": [ + 196.0, + 11.000000000000014, + 184.0, + 269.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 352, + "image_id": 255, + "category_id": 1, + "segmentation": [ + [ + 644.0, + 123.0, + 825.0, + 123.0, + 825.0, + 348.0, + 644.0, + 348.0 + ] + ], + "area": 40725.0, + "bbox": [ + 644.0, + 123.0, + 181.0, + 225.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 353, + "image_id": 256, + "category_id": 1, + "segmentation": [ + [ + 363.0, + 62.99999999999999, + 677.0, + 62.99999999999999, + 677.0, + 488.00000000000006, + 363.0, + 488.00000000000006 + ] + ], + "area": 133450.00000000003, + "bbox": [ + 363.0, + 62.99999999999999, + 314.0, + 425.00000000000006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 354, + "image_id": 257, + "category_id": 1, + "segmentation": [ + [ + 242.00000000000003, + 70.99999999999999, + 385.0, + 70.99999999999999, + 385.0, + 236.99999999999997, + 242.00000000000003, + 236.99999999999997 + ] + ], + "area": 23737.999999999996, + "bbox": [ + 242.00000000000003, + 70.99999999999999, + 143.0, + 166.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 355, + "image_id": 258, + "category_id": 1, + "segmentation": [ + [ + 113.0, + 65.99999999999996, + 870.0, + 65.99999999999996, + 870.0, + 955.0000000000001, + 113.0, + 955.0000000000001 + ] + ], + "area": 672973.0000000001, + "bbox": [ + 113.0, + 65.99999999999996, + 757.0, + 889.0000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 356, + "image_id": 259, + "category_id": 1, + "segmentation": [ + [ + 268.00000000000006, + 73.99999999999999, + 401.0, + 73.99999999999999, + 401.0, + 231.99999999999997, + 268.00000000000006, + 231.99999999999997 + ] + ], + "area": 21013.999999999993, + "bbox": [ + 268.00000000000006, + 73.99999999999999, + 133.0, + 158.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 357, + "image_id": 260, + "category_id": 1, + "segmentation": [ + [ + 328.0, + 54.999999999999986, + 543.0, + 54.999999999999986, + 543.0, + 305.0, + 328.0, + 305.0 + ] + ], + "area": 53750.0, + "bbox": [ + 328.0, + 54.999999999999986, + 215.0, + 250.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 358, + "image_id": 261, + "category_id": 1, + "segmentation": [ + [ + 90.0, + 56.0, + 184.0, + 56.0, + 184.0, + 164.0, + 90.0, + 164.0 + ] + ], + "area": 10152.0, + "bbox": [ + 90.0, + 56.0, + 94.0, + 108.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 359, + "image_id": 261, + "category_id": 1, + "segmentation": [ + [ + 295.0, + 85.0, + 371.0, + 85.0, + 371.0, + 186.99999999999997, + 295.0, + 186.99999999999997 + ] + ], + "area": 7751.999999999998, + "bbox": [ + 295.0, + 85.0, + 76.0, + 102.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 360, + "image_id": 261, + "category_id": 1, + "segmentation": [ + [ + 476.0, + 54.999999999999986, + 567.0, + 54.999999999999986, + 567.0, + 164.0, + 476.0, + 164.0 + ] + ], + "area": 9919.000000000002, + "bbox": [ + 476.0, + 54.999999999999986, + 91.0, + 109.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 361, + "image_id": 261, + "category_id": 1, + "segmentation": [ + [ + 686.0, + 65.0, + 779.0, + 65.0, + 779.0, + 173.0, + 686.0, + 173.0 + ] + ], + "area": 10044.0, + "bbox": [ + 686.0, + 65.0, + 93.0, + 108.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 362, + "image_id": 261, + "category_id": 1, + "segmentation": [ + [ + 861.0, + 49.0, + 963.0, + 49.0, + 963.0, + 165.0, + 861.0, + 165.0 + ] + ], + "area": 11832.0, + "bbox": [ + 861.0, + 49.0, + 102.0, + 116.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 363, + "image_id": 262, + "category_id": 1, + "segmentation": [ + [ + 219.0, + 423.99999999999994, + 511.0, + 423.99999999999994, + 511.0, + 753.0, + 219.0, + 753.0 + ] + ], + "area": 96068.00000000001, + "bbox": [ + 219.0, + 423.99999999999994, + 292.0, + 329.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 364, + "image_id": 263, + "category_id": 1, + "segmentation": [ + [ + 372.0, + 216.99999999999994, + 661.0, + 216.99999999999994, + 661.0, + 581.0, + 372.0, + 581.0 + ] + ], + "area": 105196.00000000001, + "bbox": [ + 372.0, + 216.99999999999994, + 289.0, + 364.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 365, + "image_id": 264, + "category_id": 1, + "segmentation": [ + [ + 116.00000000000001, + 43.99999999999999, + 160.0, + 43.99999999999999, + 160.0, + 92.0, + 116.00000000000001, + 92.0 + ] + ], + "area": 2111.9999999999995, + "bbox": [ + 116.00000000000001, + 43.99999999999999, + 44.0, + 48.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 366, + "image_id": 265, + "category_id": 1, + "segmentation": [ + [ + 274.0, + 221.00000000000003, + 661.0, + 221.00000000000003, + 661.0, + 693.0, + 274.0, + 693.0 + ] + ], + "area": 182664.0, + "bbox": [ + 274.0, + 221.00000000000003, + 387.0, + 472.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 367, + "image_id": 266, + "category_id": 1, + "segmentation": [ + [ + 269.0, + 88.00000000000003, + 885.0, + 88.00000000000003, + 885.0, + 871.0, + 269.0, + 871.0 + ] + ], + "area": 482328.0, + "bbox": [ + 269.0, + 88.00000000000003, + 616.0, + 782.9999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 368, + "image_id": 267, + "category_id": 1, + "segmentation": [ + [ + 377.0, + 32.99999999999998, + 596.0, + 32.99999999999998, + 596.0, + 266.0, + 377.0, + 266.0 + ] + ], + "area": 51027.00000000001, + "bbox": [ + 377.0, + 32.99999999999998, + 219.0, + 233.00000000000003 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 369, + "image_id": 268, + "category_id": 1, + "segmentation": [ + [ + 339.0, + 80.00000000000001, + 662.0, + 80.00000000000001, + 662.0, + 496.0, + 339.0, + 496.0 + ] + ], + "area": 134368.0, + "bbox": [ + 339.0, + 80.00000000000001, + 323.0, + 416.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 370, + "image_id": 269, + "category_id": 1, + "segmentation": [ + [ + 296.0, + 162.99999999999997, + 686.0, + 162.99999999999997, + 686.0, + 719.0000000000001, + 296.0, + 719.0000000000001 + ] + ], + "area": 216840.00000000006, + "bbox": [ + 296.0, + 162.99999999999997, + 390.0, + 556.0000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 371, + "image_id": 270, + "category_id": 1, + "segmentation": [ + [ + 301.0, + 122.00000000000004, + 797.0, + 122.00000000000004, + 797.0, + 705.0, + 301.0, + 705.0 + ] + ], + "area": 289168.0, + "bbox": [ + 301.0, + 122.00000000000004, + 496.0, + 583.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 372, + "image_id": 271, + "category_id": 1, + "segmentation": [ + [ + 385.0, + 114.99999999999999, + 710.0, + 114.99999999999999, + 710.0, + 537.0, + 385.0, + 537.0 + ] + ], + "area": 137150.0, + "bbox": [ + 385.0, + 114.99999999999999, + 325.0, + 422.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 373, + "image_id": 272, + "category_id": 1, + "segmentation": [ + [ + 287.0, + 111.99999999999999, + 415.0, + 111.99999999999999, + 415.0, + 255.0, + 287.0, + 255.0 + ] + ], + "area": 18304.0, + "bbox": [ + 287.0, + 111.99999999999999, + 128.0, + 143.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 374, + "image_id": 273, + "category_id": 1, + "segmentation": [ + [ + 46.0, + 126.0, + 153.0, + 126.0, + 153.0, + 269.0, + 46.0, + 269.0 + ] + ], + "area": 15301.0, + "bbox": [ + 46.0, + 126.0, + 107.0, + 143.00000000000003 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 375, + "image_id": 273, + "category_id": 1, + "segmentation": [ + [ + 175.0, + 9.000000000000007, + 284.00000000000006, + 9.000000000000007, + 284.00000000000006, + 158.0, + 175.0, + 158.0 + ] + ], + "area": 16241.00000000001, + "bbox": [ + 175.0, + 9.000000000000007, + 109.00000000000001, + 149.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 376, + "image_id": 274, + "category_id": 1, + "segmentation": [ + [ + 330.0, + 109.0, + 750.0, + 109.0, + 750.0, + 686.0, + 330.0, + 686.0 + ] + ], + "area": 242340.0, + "bbox": [ + 330.0, + 109.0, + 420.0, + 577.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 377, + "image_id": 275, + "category_id": 1, + "segmentation": [ + [ + 260.0, + 91.0, + 400.0, + 91.0, + 400.0, + 237.0, + 260.0, + 237.0 + ] + ], + "area": 20440.0, + "bbox": [ + 260.0, + 91.0, + 140.0, + 146.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 378, + "image_id": 275, + "category_id": 1, + "segmentation": [ + [ + 799.0, + 140.99999999999997, + 918.0, + 140.99999999999997, + 918.0, + 260.0, + 799.0, + 260.0 + ] + ], + "area": 14161.000000000004, + "bbox": [ + 799.0, + 140.99999999999997, + 119.0, + 119.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 379, + "image_id": 276, + "category_id": 1, + "segmentation": [ + [ + 282.0, + 66.0, + 654.0, + 66.0, + 654.0, + 488.0, + 282.0, + 488.0 + ] + ], + "area": 156984.0, + "bbox": [ + 282.0, + 66.0, + 372.0, + 422.00000000000006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 380, + "image_id": 277, + "category_id": 1, + "segmentation": [ + [ + 690.0, + 233.99999999999997, + 935.0, + 233.99999999999997, + 935.0, + 494.99999999999994, + 690.0, + 494.99999999999994 + ] + ], + "area": 63945.0, + "bbox": [ + 690.0, + 233.99999999999997, + 245.0, + 261.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 381, + "image_id": 278, + "category_id": 1, + "segmentation": [ + [ + 320.0, + 31.000000000000004, + 675.0, + 31.000000000000004, + 675.0, + 531.0, + 320.0, + 531.0 + ] + ], + "area": 177500.0, + "bbox": [ + 320.0, + 31.000000000000004, + 355.0, + 500.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 382, + "image_id": 279, + "category_id": 1, + "segmentation": [ + [ + 134.0, + 169.0, + 241.0, + 169.0, + 241.0, + 288.0, + 134.0, + 288.0 + ] + ], + "area": 12733.0, + "bbox": [ + 134.0, + 169.0, + 107.0, + 119.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 383, + "image_id": 279, + "category_id": 1, + "segmentation": [ + [ + 680.0, + 159.99999999999997, + 804.0, + 159.99999999999997, + 804.0, + 302.99999999999994, + 680.0, + 302.99999999999994 + ] + ], + "area": 17731.999999999996, + "bbox": [ + 680.0, + 159.99999999999997, + 124.0, + 143.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 384, + "image_id": 280, + "category_id": 1, + "segmentation": [ + [ + 148.0, + 69.99999999999999, + 316.0, + 69.99999999999999, + 316.0, + 342.0, + 148.0, + 342.0 + ] + ], + "area": 45696.0, + "bbox": [ + 148.0, + 69.99999999999999, + 168.0, + 272.00000000000006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 385, + "image_id": 280, + "category_id": 1, + "segmentation": [ + [ + 422.0, + 71.00000000000001, + 640.0, + 71.00000000000001, + 640.0, + 317.0, + 422.0, + 317.0 + ] + ], + "area": 53628.0, + "bbox": [ + 422.0, + 71.00000000000001, + 218.0, + 246.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 386, + "image_id": 281, + "category_id": 1, + "segmentation": [ + [ + 186.0, + 40.0, + 366.0, + 40.0, + 366.0, + 249.0, + 186.0, + 249.0 + ] + ], + "area": 37620.0, + "bbox": [ + 186.0, + 40.0, + 180.0, + 209.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 387, + "image_id": 281, + "category_id": 1, + "segmentation": [ + [ + 715.0, + 56.0, + 891.0, + 56.0, + 891.0, + 264.0, + 715.0, + 264.0 + ] + ], + "area": 36608.0, + "bbox": [ + 715.0, + 56.0, + 176.0, + 208.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 388, + "image_id": 282, + "category_id": 1, + "segmentation": [ + [ + 3.0, + 120.00000000000003, + 389.0, + 120.00000000000003, + 389.0, + 734.9999999999999, + 3.0, + 734.9999999999999 + ] + ], + "area": 237389.99999999994, + "bbox": [ + 3.0, + 120.00000000000003, + 386.0, + 614.9999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 389, + "image_id": 282, + "category_id": 1, + "segmentation": [ + [ + 389.0, + 172.00000000000003, + 773.0, + 172.00000000000003, + 773.0, + 742.0, + 389.0, + 742.0 + ] + ], + "area": 218880.0, + "bbox": [ + 389.0, + 172.00000000000003, + 384.0, + 570.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 390, + "image_id": 283, + "category_id": 1, + "segmentation": [ + [ + 85.0, + 142.00000000000003, + 186.99999999999997, + 142.00000000000003, + 186.99999999999997, + 267.0, + 85.0, + 267.0 + ] + ], + "area": 12749.999999999993, + "bbox": [ + 85.0, + 142.00000000000003, + 101.99999999999999, + 125.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 391, + "image_id": 284, + "category_id": 1, + "segmentation": [ + [ + 220.0, + 110.00000000000001, + 381.0, + 110.00000000000001, + 381.0, + 277.0, + 220.0, + 277.0 + ] + ], + "area": 26887.0, + "bbox": [ + 220.0, + 110.00000000000001, + 161.0, + 167.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 392, + "image_id": 285, + "category_id": 1, + "segmentation": [ + [ + 89.0, + 155.0, + 174.00000000000003, + 155.0, + 174.00000000000003, + 274.0, + 89.0, + 274.0 + ] + ], + "area": 10115.000000000004, + "bbox": [ + 89.0, + 155.0, + 85.0, + 119.00000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 393, + "image_id": 285, + "category_id": 1, + "segmentation": [ + [ + 198.00000000000003, + 133.0, + 325.0, + 133.0, + 325.0, + 265.0, + 198.00000000000003, + 265.0 + ] + ], + "area": 16763.999999999996, + "bbox": [ + 198.00000000000003, + 133.0, + 127.0, + 132.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 394, + "image_id": 286, + "category_id": 1, + "segmentation": [ + [ + 314.0, + 59.99999999999999, + 450.0, + 59.99999999999999, + 450.0, + 212.99999999999997, + 314.0, + 212.99999999999997 + ] + ], + "area": 20807.999999999996, + "bbox": [ + 314.0, + 59.99999999999999, + 136.0, + 153.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 395, + "image_id": 286, + "category_id": 1, + "segmentation": [ + [ + 597.0, + 6.000000000000003, + 731.0, + 6.000000000000003, + 731.0, + 138.0, + 597.0, + 138.0 + ] + ], + "area": 17688.0, + "bbox": [ + 597.0, + 6.000000000000003, + 134.0, + 132.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 396, + "image_id": 287, + "category_id": 1, + "segmentation": [ + [ + 455.0, + 120.99999999999999, + 746.0, + 120.99999999999999, + 746.0, + 530.0, + 455.0, + 530.0 + ] + ], + "area": 119019.0, + "bbox": [ + 455.0, + 120.99999999999999, + 291.0, + 409.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 397, + "image_id": 288, + "category_id": 1, + "segmentation": [ + [ + 18.000000000000004, + 102.99999999999999, + 108.0, + 102.99999999999999, + 108.0, + 217.0, + 18.000000000000004, + 217.0 + ] + ], + "area": 10260.000000000002, + "bbox": [ + 18.000000000000004, + 102.99999999999999, + 90.0, + 114.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 398, + "image_id": 288, + "category_id": 1, + "segmentation": [ + [ + 304.0, + 74.99999999999999, + 408.0, + 74.99999999999999, + 408.0, + 205.0, + 304.0, + 205.0 + ] + ], + "area": 13520.0, + "bbox": [ + 304.0, + 74.99999999999999, + 104.00000000000001, + 130.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 399, + "image_id": 289, + "category_id": 1, + "segmentation": [ + [ + 289.0, + 132.99999999999997, + 410.0, + 132.99999999999997, + 410.0, + 264.99999999999994, + 289.0, + 264.99999999999994 + ] + ], + "area": 15971.999999999996, + "bbox": [ + 289.0, + 132.99999999999997, + 121.00000000000001, + 132.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 400, + "image_id": 290, + "category_id": 1, + "segmentation": [ + [ + 277.0, + 88.0, + 504.0, + 88.0, + 504.0, + 384.99999999999994, + 277.0, + 384.99999999999994 + ] + ], + "area": 67418.99999999999, + "bbox": [ + 277.0, + 88.0, + 227.0, + 296.99999999999994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 401, + "image_id": 291, + "category_id": 1, + "segmentation": [ + [ + 534.0, + 113.00000000000003, + 811.0, + 113.00000000000003, + 811.0, + 466.0, + 534.0, + 466.0 + ] + ], + "area": 97781.0, + "bbox": [ + 534.0, + 113.00000000000003, + 277.0, + 353.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 402, + "image_id": 291, + "category_id": 1, + "segmentation": [ + [ + 105.0, + 79.00000000000001, + 348.0, + 79.00000000000001, + 348.0, + 383.0, + 105.0, + 383.0 + ] + ], + "area": 73872.0, + "bbox": [ + 105.0, + 79.00000000000001, + 243.0, + 304.00000000000006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 403, + "image_id": 292, + "category_id": 1, + "segmentation": [ + [ + 143.0, + 8.000000000000014, + 854.0, + 8.000000000000014, + 854.0, + 639.0, + 143.0, + 639.0 + ] + ], + "area": 448641.0, + "bbox": [ + 143.0, + 8.000000000000014, + 711.0, + 631.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 404, + "image_id": 293, + "category_id": 1, + "segmentation": [ + [ + 54.99999999999999, + 53.99999999999999, + 188.0, + 53.99999999999999, + 188.0, + 219.0, + 54.99999999999999, + 219.0 + ] + ], + "area": 21945.0, + "bbox": [ + 54.99999999999999, + 53.99999999999999, + 133.0, + 165.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 405, + "image_id": 293, + "category_id": 1, + "segmentation": [ + [ + 372.0, + 50.0, + 491.0, + 50.0, + 491.0, + 203.0, + 372.0, + 203.0 + ] + ], + "area": 18207.0, + "bbox": [ + 372.0, + 50.0, + 119.00000000000001, + 153.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 406, + "image_id": 294, + "category_id": 1, + "segmentation": [ + [ + 204.0, + 65.99999999999999, + 386.0, + 65.99999999999999, + 386.0, + 287.0, + 204.0, + 287.0 + ] + ], + "area": 40222.0, + "bbox": [ + 204.0, + 65.99999999999999, + 182.0, + 221.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 407, + "image_id": 295, + "category_id": 1, + "segmentation": [ + [ + 262.0, + 166.0, + 825.0, + 166.0, + 825.0, + 888.0, + 262.0, + 888.0 + ] + ], + "area": 406486.0, + "bbox": [ + 262.0, + 166.0, + 563.0, + 722.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 408, + "image_id": 296, + "category_id": 1, + "segmentation": [ + [ + 426.0, + 48.99999999999999, + 750.0, + 48.99999999999999, + 750.0, + 429.0, + 426.0, + 429.0 + ] + ], + "area": 123120.0, + "bbox": [ + 426.0, + 48.99999999999999, + 324.0, + 380.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 409, + "image_id": 297, + "category_id": 1, + "segmentation": [ + [ + 327.0, + 21.000000000000004, + 530.0, + 21.000000000000004, + 530.0, + 286.0, + 327.0, + 286.0 + ] + ], + "area": 53795.0, + "bbox": [ + 327.0, + 21.000000000000004, + 203.0, + 264.99999999999994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 410, + "image_id": 298, + "category_id": 1, + "segmentation": [ + [ + 308.00000000000006, + 133.0, + 416.0, + 133.0, + 416.0, + 262.0, + 308.00000000000006, + 262.0 + ] + ], + "area": 13931.999999999993, + "bbox": [ + 308.00000000000006, + 133.0, + 108.0, + 129.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 411, + "image_id": 299, + "category_id": 1, + "segmentation": [ + [ + 293.00000000000006, + 80.99999999999999, + 443.00000000000006, + 80.99999999999999, + 443.00000000000006, + 226.0, + 293.00000000000006, + 226.0 + ] + ], + "area": 21750.0, + "bbox": [ + 293.00000000000006, + 80.99999999999999, + 150.0, + 145.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 412, + "image_id": 300, + "category_id": 1, + "segmentation": [ + [ + 260.0, + 162.0, + 830.0, + 162.0, + 830.0, + 826.0, + 260.0, + 826.0 + ] + ], + "area": 378480.0, + "bbox": [ + 260.0, + 162.0, + 570.0, + 664.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 413, + "image_id": 301, + "category_id": 1, + "segmentation": [ + [ + 214.0, + 5.999999999999995, + 316.0, + 5.999999999999995, + 316.0, + 151.99999999999997, + 214.0, + 151.99999999999997 + ] + ], + "area": 14891.999999999996, + "bbox": [ + 214.0, + 5.999999999999995, + 102.0, + 146.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 414, + "image_id": 301, + "category_id": 1, + "segmentation": [ + [ + 313.0, + 97.0, + 391.0, + 97.0, + 391.0, + 212.99999999999997, + 313.0, + 212.99999999999997 + ] + ], + "area": 9047.999999999998, + "bbox": [ + 313.0, + 97.0, + 78.0, + 115.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 415, + "image_id": 301, + "category_id": 1, + "segmentation": [ + [ + 507.0, + 102.99999999999999, + 582.0, + 102.99999999999999, + 582.0, + 220.0, + 507.0, + 220.0 + ] + ], + "area": 8775.000000000002, + "bbox": [ + 507.0, + 102.99999999999999, + 75.0, + 117.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 416, + "image_id": 301, + "category_id": 1, + "segmentation": [ + [ + 641.0, + 46.0, + 738.0, + 46.0, + 738.0, + 182.0, + 641.0, + 182.0 + ] + ], + "area": 13192.0, + "bbox": [ + 641.0, + 46.0, + 97.0, + 136.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 417, + "image_id": 301, + "category_id": 1, + "segmentation": [ + [ + 760.0, + 43.00000000000001, + 872.0, + 43.00000000000001, + 872.0, + 191.0, + 760.0, + 191.0 + ] + ], + "area": 16576.0, + "bbox": [ + 760.0, + 43.00000000000001, + 112.0, + 148.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 418, + "image_id": 302, + "category_id": 1, + "segmentation": [ + [ + 142.00000000000003, + 26.0, + 241.0, + 26.0, + 241.0, + 147.99999999999997, + 142.00000000000003, + 147.99999999999997 + ] + ], + "area": 12077.999999999995, + "bbox": [ + 142.00000000000003, + 26.0, + 99.0, + 121.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 419, + "image_id": 303, + "category_id": 1, + "segmentation": [ + [ + 268.00000000000006, + 158.0, + 398.00000000000006, + 158.0, + 398.00000000000006, + 290.00000000000006, + 268.00000000000006, + 290.00000000000006 + ] + ], + "area": 17160.000000000007, + "bbox": [ + 268.00000000000006, + 158.0, + 130.0, + 132.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 420, + "image_id": 304, + "category_id": 1, + "segmentation": [ + [ + 289.00000000000006, + 122.99999999999999, + 422.0, + 122.99999999999999, + 422.0, + 288.0, + 289.00000000000006, + 288.0 + ] + ], + "area": 21944.99999999999, + "bbox": [ + 289.00000000000006, + 122.99999999999999, + 133.0, + 165.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 421, + "image_id": 305, + "category_id": 1, + "segmentation": [ + [ + 406.0, + 67.00000000000001, + 648.0, + 67.00000000000001, + 648.0, + 384.00000000000006, + 406.0, + 384.00000000000006 + ] + ], + "area": 76714.00000000001, + "bbox": [ + 406.0, + 67.00000000000001, + 242.0, + 317.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 422, + "image_id": 306, + "category_id": 1, + "segmentation": [ + [ + 168.0, + 123.0, + 348.0, + 123.0, + 348.0, + 334.0, + 168.0, + 334.0 + ] + ], + "area": 37980.0, + "bbox": [ + 168.0, + 123.0, + 180.0, + 211.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 423, + "image_id": 306, + "category_id": 1, + "segmentation": [ + [ + 497.0, + 203.99999999999997, + 654.0, + 203.99999999999997, + 654.0, + 396.0, + 497.0, + 396.0 + ] + ], + "area": 30144.000000000004, + "bbox": [ + 497.0, + 203.99999999999997, + 157.0, + 192.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 424, + "image_id": 306, + "category_id": 1, + "segmentation": [ + [ + 817.0, + 72.00000000000001, + 933.0, + 72.00000000000001, + 933.0, + 196.0, + 817.0, + 196.0 + ] + ], + "area": 14383.999999999998, + "bbox": [ + 817.0, + 72.00000000000001, + 116.0, + 124.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 425, + "image_id": 307, + "category_id": 1, + "segmentation": [ + [ + 389.0, + 42.99999999999997, + 704.0, + 42.99999999999997, + 704.0, + 488.99999999999994, + 389.0, + 488.99999999999994 + ] + ], + "area": 140490.0, + "bbox": [ + 389.0, + 42.99999999999997, + 315.0, + 446.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 426, + "image_id": 308, + "category_id": 1, + "segmentation": [ + [ + 272.0, + 170.00000000000003, + 401.0, + 170.00000000000003, + 401.0, + 330.0, + 272.0, + 330.0 + ] + ], + "area": 20639.999999999996, + "bbox": [ + 272.0, + 170.00000000000003, + 129.0, + 160.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 427, + "image_id": 309, + "category_id": 1, + "segmentation": [ + [ + 262.0, + 129.0, + 394.00000000000006, + 129.0, + 394.00000000000006, + 276.0, + 262.0, + 276.0 + ] + ], + "area": 19404.000000000007, + "bbox": [ + 262.0, + 129.0, + 132.0, + 147.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 428, + "image_id": 310, + "category_id": 1, + "segmentation": [ + [ + 139.0, + 202.0, + 860.0, + 202.0, + 860.0, + 1120.0, + 139.0, + 1120.0 + ] + ], + "area": 661878.0, + "bbox": [ + 139.0, + 202.0, + 721.0, + 918.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 429, + "image_id": 311, + "category_id": 1, + "segmentation": [ + [ + 581.0, + 91.0, + 708.0, + 91.0, + 708.0, + 235.0, + 581.0, + 235.0 + ] + ], + "area": 18288.0, + "bbox": [ + 581.0, + 91.0, + 127.0, + 144.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 430, + "image_id": 312, + "category_id": 1, + "segmentation": [ + [ + 262.0, + 85.0, + 389.00000000000006, + 85.0, + 389.00000000000006, + 225.0, + 262.0, + 225.0 + ] + ], + "area": 17780.000000000007, + "bbox": [ + 262.0, + 85.0, + 127.00000000000001, + 140.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 431, + "image_id": 313, + "category_id": 1, + "segmentation": [ + [ + 171.0, + 71.00000000000001, + 527.0, + 71.00000000000001, + 527.0, + 441.0, + 171.0, + 441.0 + ] + ], + "area": 131720.0, + "bbox": [ + 171.0, + 71.00000000000001, + 356.0, + 369.99999999999994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 432, + "image_id": 314, + "category_id": 1, + "segmentation": [ + [ + 360.00000000000006, + 135.0, + 483.00000000000006, + 135.0, + 483.00000000000006, + 269.0, + 360.00000000000006, + 269.0 + ] + ], + "area": 16482.0, + "bbox": [ + 360.00000000000006, + 135.0, + 123.0, + 134.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 433, + "image_id": 315, + "category_id": 1, + "segmentation": [ + [ + 303.0, + 124.00000000000003, + 739.0, + 124.00000000000003, + 739.0, + 704.0, + 303.0, + 704.0 + ] + ], + "area": 252880.0, + "bbox": [ + 303.0, + 124.00000000000003, + 436.0, + 580.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 434, + "image_id": 316, + "category_id": 1, + "segmentation": [ + [ + 327.0, + 61.0, + 432.0, + 61.0, + 432.0, + 176.00000000000003, + 327.0, + 176.00000000000003 + ] + ], + "area": 12075.000000000004, + "bbox": [ + 327.0, + 61.0, + 105.0, + 115.00000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 435, + "image_id": 316, + "category_id": 1, + "segmentation": [ + [ + 549.0, + 61.000000000000014, + 686.0, + 61.000000000000014, + 686.0, + 222.0, + 549.0, + 222.0 + ] + ], + "area": 22057.0, + "bbox": [ + 549.0, + 61.000000000000014, + 137.0, + 161.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 436, + "image_id": 317, + "category_id": 1, + "segmentation": [ + [ + 253.00000000000006, + 109.0, + 398.00000000000006, + 109.0, + 398.00000000000006, + 283.0, + 253.00000000000006, + 283.0 + ] + ], + "area": 25230.0, + "bbox": [ + 253.00000000000006, + 109.0, + 145.0, + 174.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 437, + "image_id": 318, + "category_id": 1, + "segmentation": [ + [ + 133.0, + 520.0, + 405.0, + 520.0, + 405.0, + 811.9999999999999, + 133.0, + 811.9999999999999 + ] + ], + "area": 79423.99999999997, + "bbox": [ + 133.0, + 520.0, + 272.0, + 292.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 438, + "image_id": 318, + "category_id": 1, + "segmentation": [ + [ + 484.0, + 189.00000000000003, + 804.0, + 189.00000000000003, + 804.0, + 512.0, + 484.0, + 512.0 + ] + ], + "area": 103360.0, + "bbox": [ + 484.0, + 189.00000000000003, + 320.0, + 323.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 439, + "image_id": 319, + "category_id": 1, + "segmentation": [ + [ + 94.0, + 84.0, + 238.0, + 84.0, + 238.0, + 248.99999999999997, + 94.0, + 248.99999999999997 + ] + ], + "area": 23759.999999999996, + "bbox": [ + 94.0, + 84.0, + 144.0, + 165.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 440, + "image_id": 319, + "category_id": 1, + "segmentation": [ + [ + 351.0, + 187.99999999999997, + 486.0, + 187.99999999999997, + 486.0, + 342.99999999999994, + 351.0, + 342.99999999999994 + ] + ], + "area": 20924.999999999996, + "bbox": [ + 351.0, + 187.99999999999997, + 135.0, + 155.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 441, + "image_id": 319, + "category_id": 1, + "segmentation": [ + [ + 668.0, + 12.000000000000007, + 823.0, + 12.000000000000007, + 823.0, + 194.0, + 668.0, + 194.0 + ] + ], + "area": 28210.0, + "bbox": [ + 668.0, + 12.000000000000007, + 155.0, + 182.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 442, + "image_id": 320, + "category_id": 1, + "segmentation": [ + [ + 282.0, + 117.00000000000001, + 618.0, + 117.00000000000001, + 618.0, + 506.0, + 282.0, + 506.0 + ] + ], + "area": 130704.0, + "bbox": [ + 282.0, + 117.00000000000001, + 336.0, + 388.99999999999994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 443, + "image_id": 321, + "category_id": 1, + "segmentation": [ + [ + 333.00000000000006, + 146.0, + 456.0, + 146.0, + 456.0, + 299.0, + 333.00000000000006, + 299.0 + ] + ], + "area": 18818.999999999993, + "bbox": [ + 333.00000000000006, + 146.0, + 123.0, + 153.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 444, + "image_id": 322, + "category_id": 1, + "segmentation": [ + [ + 280.0, + 125.00000000000001, + 390.0, + 125.00000000000001, + 390.0, + 245.99999999999997, + 280.0, + 245.99999999999997 + ] + ], + "area": 13309.999999999995, + "bbox": [ + 280.0, + 125.00000000000001, + 110.0, + 121.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 445, + "image_id": 323, + "category_id": 1, + "segmentation": [ + [ + 67.0, + 39.000000000000014, + 220.0, + 39.000000000000014, + 220.0, + 240.99999999999997, + 67.0, + 240.99999999999997 + ] + ], + "area": 30905.999999999993, + "bbox": [ + 67.0, + 39.000000000000014, + 153.0, + 201.99999999999997 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 446, + "image_id": 323, + "category_id": 1, + "segmentation": [ + [ + 606.0, + 46.00000000000001, + 728.0, + 46.00000000000001, + 728.0, + 190.0, + 606.0, + 190.0 + ] + ], + "area": 17568.0, + "bbox": [ + 606.0, + 46.00000000000001, + 122.0, + 144.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 447, + "image_id": 323, + "category_id": 1, + "segmentation": [ + [ + 780.0, + 80.99999999999999, + 925.0, + 80.99999999999999, + 925.0, + 261.99999999999994, + 780.0, + 261.99999999999994 + ] + ], + "area": 26244.999999999993, + "bbox": [ + 780.0, + 80.99999999999999, + 145.0, + 181.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 448, + "image_id": 324, + "category_id": 1, + "segmentation": [ + [ + 139.0, + 165.0, + 209.00000000000003, + 165.0, + 209.00000000000003, + 246.99999999999997, + 139.0, + 246.99999999999997 + ] + ], + "area": 5740.0, + "bbox": [ + 139.0, + 165.0, + 70.0, + 82.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 449, + "image_id": 324, + "category_id": 1, + "segmentation": [ + [ + 206.00000000000003, + 170.0, + 249.0, + 170.0, + 249.0, + 237.0, + 206.00000000000003, + 237.0 + ] + ], + "area": 2880.999999999998, + "bbox": [ + 206.00000000000003, + 170.0, + 43.0, + 67.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 450, + "image_id": 324, + "category_id": 1, + "segmentation": [ + [ + 260.0, + 161.99999999999997, + 303.00000000000006, + 161.99999999999997, + 303.00000000000006, + 232.99999999999997, + 260.0, + 232.99999999999997 + ] + ], + "area": 3053.000000000004, + "bbox": [ + 260.0, + 161.99999999999997, + 43.0, + 71.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 451, + "image_id": 324, + "category_id": 1, + "segmentation": [ + [ + 283.0, + 116.0, + 341.0, + 116.0, + 341.0, + 189.0, + 283.0, + 189.0 + ] + ], + "area": 4234.0, + "bbox": [ + 283.0, + 116.0, + 58.0, + 73.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 452, + "image_id": 325, + "category_id": 1, + "segmentation": [ + [ + 312.0, + 88.0, + 432.0, + 88.0, + 432.0, + 229.0, + 312.0, + 229.0 + ] + ], + "area": 16920.0, + "bbox": [ + 312.0, + 88.0, + 120.0, + 141.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 453, + "image_id": 326, + "category_id": 1, + "segmentation": [ + [ + 99.0, + 36.0, + 299.0, + 36.0, + 299.0, + 258.0, + 99.0, + 258.0 + ] + ], + "area": 44400.0, + "bbox": [ + 99.0, + 36.0, + 200.0, + 222.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 454, + "image_id": 326, + "category_id": 1, + "segmentation": [ + [ + 306.0, + 117.99999999999999, + 531.0, + 117.99999999999999, + 531.0, + 475.0, + 306.0, + 475.0 + ] + ], + "area": 80325.0, + "bbox": [ + 306.0, + 117.99999999999999, + 225.0, + 357.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 455, + "image_id": 326, + "category_id": 1, + "segmentation": [ + [ + 525.0, + 150.0, + 723.0, + 150.0, + 723.0, + 537.0, + 525.0, + 537.0 + ] + ], + "area": 76626.0, + "bbox": [ + 525.0, + 150.0, + 198.0, + 387.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 456, + "image_id": 326, + "category_id": 1, + "segmentation": [ + [ + 720.0, + 54.99999999999998, + 978.0, + 54.99999999999998, + 978.0, + 457.00000000000006, + 720.0, + 457.00000000000006 + ] + ], + "area": 103716.00000000001, + "bbox": [ + 720.0, + 54.99999999999998, + 258.0, + 402.00000000000006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 457, + "image_id": 327, + "category_id": 1, + "segmentation": [ + [ + 185.0, + 2.999999999999986, + 353.0, + 2.999999999999986, + 353.0, + 192.99999999999997, + 185.0, + 192.99999999999997 + ] + ], + "area": 31920.0, + "bbox": [ + 185.0, + 2.999999999999986, + 168.0, + 190.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 458, + "image_id": 327, + "category_id": 1, + "segmentation": [ + [ + 616.0, + 85.0, + 755.0, + 85.0, + 755.0, + 242.0, + 616.0, + 242.0 + ] + ], + "area": 21823.0, + "bbox": [ + 616.0, + 85.0, + 139.0, + 157.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 459, + "image_id": 328, + "category_id": 1, + "segmentation": [ + [ + 94.0, + 63.99999999999999, + 141.0, + 63.99999999999999, + 141.0, + 128.0, + 94.0, + 128.0 + ] + ], + "area": 3008.0, + "bbox": [ + 94.0, + 63.99999999999999, + 47.0, + 64.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 460, + "image_id": 328, + "category_id": 1, + "segmentation": [ + [ + 169.0, + 82.99999999999999, + 216.0, + 82.99999999999999, + 216.0, + 142.0, + 169.0, + 142.0 + ] + ], + "area": 2773.0000000000005, + "bbox": [ + 169.0, + 82.99999999999999, + 47.0, + 59.00000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 461, + "image_id": 328, + "category_id": 1, + "segmentation": [ + [ + 233.0, + 73.0, + 283.00000000000006, + 73.0, + 283.00000000000006, + 137.0, + 233.0, + 137.0 + ] + ], + "area": 3200.0000000000036, + "bbox": [ + 233.0, + 73.0, + 50.0, + 64.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 462, + "image_id": 328, + "category_id": 1, + "segmentation": [ + [ + 294.0, + 42.0, + 350.00000000000006, + 42.0, + 350.00000000000006, + 109.0, + 294.0, + 109.0 + ] + ], + "area": 3752.0000000000036, + "bbox": [ + 294.0, + 42.0, + 56.0, + 67.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 463, + "image_id": 328, + "category_id": 1, + "segmentation": [ + [ + 350.0, + 23.000000000000004, + 402.0, + 23.000000000000004, + 402.0, + 95.00000000000001, + 350.0, + 95.00000000000001 + ] + ], + "area": 3744.000000000001, + "bbox": [ + 350.0, + 23.000000000000004, + 52.00000000000001, + 72.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 464, + "image_id": 329, + "category_id": 1, + "segmentation": [ + [ + 267.0, + 157.99999999999997, + 403.0, + 157.99999999999997, + 403.0, + 323.0, + 267.0, + 323.0 + ] + ], + "area": 22440.000000000004, + "bbox": [ + 267.0, + 157.99999999999997, + 136.0, + 165.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 465, + "image_id": 330, + "category_id": 1, + "segmentation": [ + [ + 293.00000000000006, + 138.0, + 418.00000000000006, + 138.0, + 418.00000000000006, + 267.0, + 293.00000000000006, + 267.0 + ] + ], + "area": 16125.0, + "bbox": [ + 293.00000000000006, + 138.0, + 125.0, + 129.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 466, + "image_id": 331, + "category_id": 1, + "segmentation": [ + [ + 222.00000000000003, + 116.0, + 367.0, + 116.0, + 367.0, + 261.0, + 222.00000000000003, + 261.0 + ] + ], + "area": 21024.999999999996, + "bbox": [ + 222.00000000000003, + 116.0, + 145.0, + 145.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 467, + "image_id": 332, + "category_id": 1, + "segmentation": [ + [ + 353.0, + 45.999999999999986, + 653.0, + 45.999999999999986, + 653.0, + 408.0, + 353.0, + 408.0 + ] + ], + "area": 108600.0, + "bbox": [ + 353.0, + 45.999999999999986, + 300.0, + 362.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 468, + "image_id": 333, + "category_id": 1, + "segmentation": [ + [ + 391.0, + 178.0, + 711.0, + 178.0, + 711.0, + 530.0, + 391.0, + 530.0 + ] + ], + "area": 112640.0, + "bbox": [ + 391.0, + 178.0, + 320.0, + 352.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 469, + "image_id": 334, + "category_id": 1, + "segmentation": [ + [ + 205.0, + 18.999999999999993, + 306.0, + 18.999999999999993, + 306.0, + 132.0, + 205.0, + 132.0 + ] + ], + "area": 11413.0, + "bbox": [ + 205.0, + 18.999999999999993, + 101.0, + 113.00000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 470, + "image_id": 334, + "category_id": 1, + "segmentation": [ + [ + 617.0, + 44.99999999999998, + 900.0, + 44.99999999999998, + 900.0, + 361.0, + 617.0, + 361.0 + ] + ], + "area": 89428.0, + "bbox": [ + 617.0, + 44.99999999999998, + 283.0, + 316.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 471, + "image_id": 335, + "category_id": 1, + "segmentation": [ + [ + 205.0, + 178.0, + 743.0, + 178.0, + 743.0, + 935.9999999999999, + 205.0, + 935.9999999999999 + ] + ], + "area": 407803.99999999994, + "bbox": [ + 205.0, + 178.0, + 538.0, + 757.9999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 472, + "image_id": 336, + "category_id": 1, + "segmentation": [ + [ + 251.0, + 88.0, + 371.0, + 88.0, + 371.0, + 230.99999999999997, + 251.0, + 230.99999999999997 + ] + ], + "area": 17159.999999999996, + "bbox": [ + 251.0, + 88.0, + 120.0, + 143.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 473, + "image_id": 337, + "category_id": 1, + "segmentation": [ + [ + 291.0, + 88.99999999999999, + 434.0, + 88.99999999999999, + 434.0, + 245.99999999999997, + 291.0, + 245.99999999999997 + ] + ], + "area": 22451.0, + "bbox": [ + 291.0, + 88.99999999999999, + 143.0, + 157.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 474, + "image_id": 338, + "category_id": 1, + "segmentation": [ + [ + 407.0, + 42.00000000000001, + 754.0, + 42.00000000000001, + 754.0, + 438.0, + 407.0, + 438.0 + ] + ], + "area": 137412.0, + "bbox": [ + 407.0, + 42.00000000000001, + 347.0, + 396.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 475, + "image_id": 339, + "category_id": 1, + "segmentation": [ + [ + 246.0, + 45.99999999999999, + 592.0, + 45.99999999999999, + 592.0, + 430.99999999999994, + 246.0, + 430.99999999999994 + ] + ], + "area": 133209.99999999997, + "bbox": [ + 246.0, + 45.99999999999999, + 346.0, + 385.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 476, + "image_id": 340, + "category_id": 1, + "segmentation": [ + [ + 234.0, + 86.00000000000006, + 788.0, + 86.00000000000006, + 788.0, + 825.0, + 234.0, + 825.0 + ] + ], + "area": 409406.0, + "bbox": [ + 234.0, + 86.00000000000006, + 554.0, + 739.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 477, + "image_id": 341, + "category_id": 1, + "segmentation": [ + [ + 290.00000000000006, + 106.0, + 414.00000000000006, + 106.0, + 414.00000000000006, + 244.0, + 290.00000000000006, + 244.0 + ] + ], + "area": 17112.0, + "bbox": [ + 290.00000000000006, + 106.0, + 124.0, + 138.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 478, + "image_id": 342, + "category_id": 1, + "segmentation": [ + [ + 309.0, + 210.00000000000003, + 711.0, + 210.00000000000003, + 711.0, + 738.0, + 309.0, + 738.0 + ] + ], + "area": 212256.0, + "bbox": [ + 309.0, + 210.00000000000003, + 402.0, + 528.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 479, + "image_id": 343, + "category_id": 1, + "segmentation": [ + [ + 273.99999999999994, + 58.0, + 311.0, + 58.0, + 311.0, + 104.0, + 273.99999999999994, + 104.0 + ] + ], + "area": 1702.0000000000027, + "bbox": [ + 273.99999999999994, + 58.0, + 37.0, + 46.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 480, + "image_id": 344, + "category_id": 1, + "segmentation": [ + [ + 445.0, + 123.99999999999999, + 717.0, + 123.99999999999999, + 717.0, + 454.00000000000006, + 445.0, + 454.00000000000006 + ] + ], + "area": 89760.00000000001, + "bbox": [ + 445.0, + 123.99999999999999, + 272.0, + 330.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 481, + "image_id": 345, + "category_id": 1, + "segmentation": [ + [ + 228.0, + 140.0, + 372.0, + 140.0, + 372.0, + 306.0, + 228.0, + 306.0 + ] + ], + "area": 23904.0, + "bbox": [ + 228.0, + 140.0, + 144.0, + 166.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 482, + "image_id": 346, + "category_id": 1, + "segmentation": [ + [ + 168.00000000000003, + 41.00000000000001, + 249.0, + 41.00000000000001, + 249.0, + 131.0, + 168.00000000000003, + 131.0 + ] + ], + "area": 7289.999999999997, + "bbox": [ + 168.00000000000003, + 41.00000000000001, + 81.0, + 90.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 483, + "image_id": 347, + "category_id": 1, + "segmentation": [ + [ + 275.0, + 105.0, + 383.0, + 105.0, + 383.0, + 220.00000000000003, + 275.0, + 220.00000000000003 + ] + ], + "area": 12420.000000000004, + "bbox": [ + 275.0, + 105.0, + 108.0, + 115.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 484, + "image_id": 348, + "category_id": 1, + "segmentation": [ + [ + 172.0, + 92.00000000000001, + 668.0, + 92.00000000000001, + 668.0, + 757.0, + 172.0, + 757.0 + ] + ], + "area": 329840.0, + "bbox": [ + 172.0, + 92.00000000000001, + 496.0, + 664.9999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 485, + "image_id": 349, + "category_id": 1, + "segmentation": [ + [ + 251.0, + 166.0, + 752.0, + 166.0, + 752.0, + 749.0000000000001, + 251.0, + 749.0000000000001 + ] + ], + "area": 292083.00000000006, + "bbox": [ + 251.0, + 166.0, + 501.0, + 583.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 486, + "image_id": 350, + "category_id": 1, + "segmentation": [ + [ + 306.0, + 29.0, + 433.0, + 29.0, + 433.0, + 190.0, + 306.0, + 190.0 + ] + ], + "area": 20447.0, + "bbox": [ + 306.0, + 29.0, + 127.0, + 161.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 487, + "image_id": 351, + "category_id": 1, + "segmentation": [ + [ + 248.00000000000006, + 175.0, + 393.00000000000006, + 175.0, + 393.00000000000006, + 328.0, + 248.00000000000006, + 328.0 + ] + ], + "area": 22185.0, + "bbox": [ + 248.00000000000006, + 175.0, + 145.0, + 153.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 488, + "image_id": 352, + "category_id": 1, + "segmentation": [ + [ + 200.0, + 0.9999999999999769, + 743.0, + 0.9999999999999769, + 743.0, + 706.0, + 200.0, + 706.0 + ] + ], + "area": 382815.0, + "bbox": [ + 200.0, + 0.9999999999999769, + 543.0, + 705.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 489, + "image_id": 353, + "category_id": 1, + "segmentation": [ + [ + 285.0, + 129.0, + 388.0, + 129.0, + 388.0, + 237.99999999999997, + 285.0, + 237.99999999999997 + ] + ], + "area": 11226.999999999996, + "bbox": [ + 285.0, + 129.0, + 103.0, + 109.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 490, + "image_id": 354, + "category_id": 1, + "segmentation": [ + [ + 228.0, + 135.00000000000006, + 864.0, + 135.00000000000006, + 864.0, + 988.0000000000001, + 228.0, + 988.0000000000001 + ] + ], + "area": 542508.0, + "bbox": [ + 228.0, + 135.00000000000006, + 636.0, + 852.9999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 491, + "image_id": 355, + "category_id": 1, + "segmentation": [ + [ + 200.0, + 117.00000000000001, + 772.0, + 117.00000000000001, + 772.0, + 877.9999999999999, + 200.0, + 877.9999999999999 + ] + ], + "area": 435291.99999999994, + "bbox": [ + 200.0, + 117.00000000000001, + 572.0, + 761.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 492, + "image_id": 356, + "category_id": 1, + "segmentation": [ + [ + 80.0, + 34.99999999999999, + 280.0, + 34.99999999999999, + 280.0, + 242.00000000000003, + 80.0, + 242.00000000000003 + ] + ], + "area": 41400.00000000001, + "bbox": [ + 80.0, + 34.99999999999999, + 200.0, + 207.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 493, + "image_id": 356, + "category_id": 1, + "segmentation": [ + [ + 669.0, + 72.00000000000001, + 839.0, + 72.00000000000001, + 839.0, + 273.0, + 669.0, + 273.0 + ] + ], + "area": 34170.0, + "bbox": [ + 669.0, + 72.00000000000001, + 170.0, + 201.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 494, + "image_id": 357, + "category_id": 1, + "segmentation": [ + [ + 284.0, + 115.99999999999999, + 408.00000000000006, + 115.99999999999999, + 408.00000000000006, + 251.99999999999994, + 284.0, + 251.99999999999994 + ] + ], + "area": 16864.0, + "bbox": [ + 284.0, + 115.99999999999999, + 124.0, + 136.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 495, + "image_id": 358, + "category_id": 1, + "segmentation": [ + [ + 239.0, + 90.99999999999994, + 849.0, + 90.99999999999994, + 849.0, + 832.0, + 239.0, + 832.0 + ] + ], + "area": 452010.0, + "bbox": [ + 239.0, + 90.99999999999994, + 610.0, + 741.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 496, + "image_id": 359, + "category_id": 1, + "segmentation": [ + [ + 269.0, + 67.00000000000003, + 739.0, + 67.00000000000003, + 739.0, + 649.0, + 269.0, + 649.0 + ] + ], + "area": 273540.0, + "bbox": [ + 269.0, + 67.00000000000003, + 470.0, + 582.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 497, + "image_id": 360, + "category_id": 1, + "segmentation": [ + [ + 200.99999999999997, + 94.99999999999999, + 388.0, + 94.99999999999999, + 388.0, + 339.0, + 200.99999999999997, + 339.0 + ] + ], + "area": 45628.00000000001, + "bbox": [ + 200.99999999999997, + 94.99999999999999, + 187.0, + 244.00000000000003 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 498, + "image_id": 360, + "category_id": 1, + "segmentation": [ + [ + 586.0, + 20.0, + 818.0, + 20.0, + 818.0, + 295.0, + 586.0, + 295.0 + ] + ], + "area": 63800.0, + "bbox": [ + 586.0, + 20.0, + 232.0, + 275.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 499, + "image_id": 361, + "category_id": 1, + "segmentation": [ + [ + 231.0, + 79.00000000000003, + 662.0, + 79.00000000000003, + 662.0, + 601.0, + 231.0, + 601.0 + ] + ], + "area": 224982.0, + "bbox": [ + 231.0, + 79.00000000000003, + 431.0, + 522.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 500, + "image_id": 362, + "category_id": 1, + "segmentation": [ + [ + 306.00000000000006, + 192.99999999999997, + 410.00000000000006, + 192.99999999999997, + 410.00000000000006, + 309.99999999999994, + 306.00000000000006, + 309.99999999999994 + ] + ], + "area": 12167.999999999996, + "bbox": [ + 306.00000000000006, + 192.99999999999997, + 104.0, + 117.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 501, + "image_id": 363, + "category_id": 1, + "segmentation": [ + [ + 362.0, + 150.99999999999994, + 679.0, + 150.99999999999994, + 679.0, + 568.0, + 362.0, + 568.0 + ] + ], + "area": 132189.00000000003, + "bbox": [ + 362.0, + 150.99999999999994, + 317.0, + 417.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 502, + "image_id": 363, + "category_id": 1, + "segmentation": [ + [ + 3.0, + 300.0, + 214.0, + 300.0, + 214.0, + 556.0, + 3.0, + 556.0 + ] + ], + "area": 54016.0, + "bbox": [ + 3.0, + 300.0, + 211.0, + 256.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 503, + "image_id": 364, + "category_id": 1, + "segmentation": [ + [ + 125.00000000000001, + 22.999999999999993, + 289.0, + 22.999999999999993, + 289.0, + 219.0, + 125.00000000000001, + 219.0 + ] + ], + "area": 32144.0, + "bbox": [ + 125.00000000000001, + 22.999999999999993, + 164.00000000000003, + 196.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 504, + "image_id": 365, + "category_id": 1, + "segmentation": [ + [ + 297.0, + 146.0, + 635.0, + 146.0, + 635.0, + 498.99999999999994, + 297.0, + 498.99999999999994 + ] + ], + "area": 119313.99999999999, + "bbox": [ + 297.0, + 146.0, + 338.0, + 353.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 505, + "image_id": 366, + "category_id": 1, + "segmentation": [ + [ + 384.99999999999994, + 63.999999999999986, + 561.0, + 63.999999999999986, + 561.0, + 304.0, + 384.99999999999994, + 304.0 + ] + ], + "area": 42240.000000000015, + "bbox": [ + 384.99999999999994, + 63.999999999999986, + 176.0, + 240.00000000000003 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 506, + "image_id": 367, + "category_id": 1, + "segmentation": [ + [ + 329.00000000000006, + 126.0, + 447.0, + 126.0, + 447.0, + 262.0, + 329.00000000000006, + 262.0 + ] + ], + "area": 16047.999999999993, + "bbox": [ + 329.00000000000006, + 126.0, + 118.0, + 136.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 507, + "image_id": 368, + "category_id": 1, + "segmentation": [ + [ + 270.0, + 31.0, + 494.0, + 31.0, + 494.0, + 254.99999999999994, + 270.0, + 254.99999999999994 + ] + ], + "area": 50175.999999999985, + "bbox": [ + 270.0, + 31.0, + 224.0, + 223.99999999999997 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 508, + "image_id": 369, + "category_id": 1, + "segmentation": [ + [ + 278.0, + 166.0, + 394.00000000000006, + 166.0, + 394.00000000000006, + 280.0, + 278.0, + 280.0 + ] + ], + "area": 13224.000000000007, + "bbox": [ + 278.0, + 166.0, + 116.00000000000001, + 114.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 509, + "image_id": 370, + "category_id": 1, + "segmentation": [ + [ + 77.0, + 156.0, + 241.0, + 156.0, + 241.0, + 348.0, + 77.0, + 348.0 + ] + ], + "area": 31488.0, + "bbox": [ + 77.0, + 156.0, + 164.0, + 192.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 510, + "image_id": 370, + "category_id": 1, + "segmentation": [ + [ + 267.0, + 192.0, + 450.0, + 192.0, + 450.0, + 361.0, + 267.0, + 361.0 + ] + ], + "area": 30927.0, + "bbox": [ + 267.0, + 192.0, + 183.0, + 168.99999999999997 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 511, + "image_id": 370, + "category_id": 1, + "segmentation": [ + [ + 637.0, + 308.0, + 761.0, + 308.0, + 761.0, + 445.99999999999994, + 637.0, + 445.99999999999994 + ] + ], + "area": 17111.999999999993, + "bbox": [ + 637.0, + 308.0, + 124.0, + 138.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 512, + "image_id": 370, + "category_id": 1, + "segmentation": [ + [ + 769.0, + 98.99999999999999, + 941.0, + 98.99999999999999, + 941.0, + 274.0, + 769.0, + 274.0 + ] + ], + "area": 30100.0, + "bbox": [ + 769.0, + 98.99999999999999, + 172.0, + 175.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 513, + "image_id": 371, + "category_id": 1, + "segmentation": [ + [ + 167.0, + 37.00000000000001, + 345.0, + 37.00000000000001, + 345.0, + 262.0, + 167.0, + 262.0 + ] + ], + "area": 40050.0, + "bbox": [ + 167.0, + 37.00000000000001, + 178.0, + 225.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 514, + "image_id": 372, + "category_id": 1, + "segmentation": [ + [ + 258.0, + 198.0, + 365.0, + 198.0, + 365.0, + 338.0, + 258.0, + 338.0 + ] + ], + "area": 14980.0, + "bbox": [ + 258.0, + 198.0, + 107.00000000000001, + 140.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 515, + "image_id": 373, + "category_id": 1, + "segmentation": [ + [ + 148.0, + 127.0, + 185.0, + 127.0, + 185.0, + 179.0, + 148.0, + 179.0 + ] + ], + "area": 1924.0, + "bbox": [ + 148.0, + 127.0, + 37.0, + 52.00000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 516, + "image_id": 373, + "category_id": 1, + "segmentation": [ + [ + 95.0, + 197.0, + 126.99999999999999, + 197.0, + 126.99999999999999, + 234.0, + 95.0, + 234.0 + ] + ], + "area": 1183.9999999999995, + "bbox": [ + 95.0, + 197.0, + 32.0, + 37.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 517, + "image_id": 374, + "category_id": 1, + "segmentation": [ + [ + 356.0, + 47.99999999999998, + 675.0, + 47.99999999999998, + 675.0, + 452.0, + 356.0, + 452.0 + ] + ], + "area": 128876.0, + "bbox": [ + 356.0, + 47.99999999999998, + 319.0, + 404.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 518, + "image_id": 375, + "category_id": 1, + "segmentation": [ + [ + 265.0, + 15.0, + 816.0, + 15.0, + 816.0, + 697.0, + 265.0, + 697.0 + ] + ], + "area": 375782.0, + "bbox": [ + 265.0, + 15.0, + 551.0, + 682.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 519, + "image_id": 376, + "category_id": 1, + "segmentation": [ + [ + 227.99999999999997, + 96.0, + 392.0, + 96.0, + 392.0, + 286.0, + 227.99999999999997, + 286.0 + ] + ], + "area": 31160.000000000004, + "bbox": [ + 227.99999999999997, + 96.0, + 164.0, + 189.99999999999997 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 520, + "image_id": 377, + "category_id": 1, + "segmentation": [ + [ + 146.0, + 96.0, + 263.0, + 96.0, + 263.0, + 236.99999999999997, + 146.0, + 236.99999999999997 + ] + ], + "area": 16496.999999999996, + "bbox": [ + 146.0, + 96.0, + 117.0, + 140.99999999999997 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 521, + "image_id": 377, + "category_id": 1, + "segmentation": [ + [ + 355.0, + 166.0, + 495.0, + 166.0, + 495.0, + 305.99999999999994, + 355.0, + 305.99999999999994 + ] + ], + "area": 19599.999999999993, + "bbox": [ + 355.0, + 166.0, + 140.0, + 140.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 522, + "image_id": 377, + "category_id": 1, + "segmentation": [ + [ + 747.0, + 120.99999999999999, + 901.0, + 120.99999999999999, + 901.0, + 281.0, + 747.0, + 281.0 + ] + ], + "area": 24640.0, + "bbox": [ + 747.0, + 120.99999999999999, + 154.0, + 160.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 523, + "image_id": 378, + "category_id": 1, + "segmentation": [ + [ + 423.0, + 51.0, + 654.0, + 51.0, + 654.0, + 294.0, + 423.0, + 294.0 + ] + ], + "area": 56133.0, + "bbox": [ + 423.0, + 51.0, + 231.0, + 243.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 524, + "image_id": 379, + "category_id": 1, + "segmentation": [ + [ + 456.0, + 59.99999999999999, + 743.0, + 59.99999999999999, + 743.0, + 390.0, + 456.0, + 390.0 + ] + ], + "area": 94710.0, + "bbox": [ + 456.0, + 59.99999999999999, + 287.0, + 330.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 525, + "image_id": 380, + "category_id": 1, + "segmentation": [ + [ + 170.0, + 137.0, + 227.0, + 137.0, + 227.0, + 201.99999999999997, + 170.0, + 201.99999999999997 + ] + ], + "area": 3704.999999999998, + "bbox": [ + 170.0, + 137.0, + 57.0, + 65.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 526, + "image_id": 380, + "category_id": 1, + "segmentation": [ + [ + 316.0, + 123.0, + 375.00000000000006, + 123.0, + 375.00000000000006, + 199.0, + 316.0, + 199.0 + ] + ], + "area": 4484.000000000005, + "bbox": [ + 316.0, + 123.0, + 59.00000000000001, + 75.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 527, + "image_id": 381, + "category_id": 1, + "segmentation": [ + [ + 318.0, + 85.0, + 432.0, + 85.0, + 432.0, + 213.0, + 318.0, + 213.0 + ] + ], + "area": 14592.0, + "bbox": [ + 318.0, + 85.0, + 114.0, + 128.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 528, + "image_id": 382, + "category_id": 1, + "segmentation": [ + [ + 197.0, + 103.0, + 810.0, + 103.0, + 810.0, + 832.9999999999999, + 197.0, + 832.9999999999999 + ] + ], + "area": 447489.99999999994, + "bbox": [ + 197.0, + 103.0, + 613.0, + 730.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 529, + "image_id": 383, + "category_id": 1, + "segmentation": [ + [ + 274.0, + 112.0, + 408.00000000000006, + 112.0, + 408.00000000000006, + 279.0, + 274.0, + 279.0 + ] + ], + "area": 22378.00000000001, + "bbox": [ + 274.0, + 112.0, + 134.0, + 167.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 530, + "image_id": 384, + "category_id": 1, + "segmentation": [ + [ + 326.0, + 128.00000000000003, + 426.0, + 128.00000000000003, + 426.0, + 241.0, + 326.0, + 241.0 + ] + ], + "area": 11299.999999999996, + "bbox": [ + 326.0, + 128.00000000000003, + 100.0, + 113.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 531, + "image_id": 385, + "category_id": 1, + "segmentation": [ + [ + 383.0, + 120.0, + 924.0, + 120.0, + 924.0, + 874.9999999999999, + 383.0, + 874.9999999999999 + ] + ], + "area": 408454.99999999994, + "bbox": [ + 383.0, + 120.0, + 541.0, + 755.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 532, + "image_id": 386, + "category_id": 1, + "segmentation": [ + [ + 60.00000000000001, + 1.9999999999999951, + 179.00000000000003, + 1.9999999999999951, + 179.00000000000003, + 125.00000000000001, + 60.00000000000001, + 125.00000000000001 + ] + ], + "area": 14637.000000000005, + "bbox": [ + 60.00000000000001, + 1.9999999999999951, + 119.00000000000001, + 123.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 533, + "image_id": 387, + "category_id": 1, + "segmentation": [ + [ + 307.0, + 109.0, + 417.0, + 109.0, + 417.0, + 236.0, + 307.0, + 236.0 + ] + ], + "area": 13970.0, + "bbox": [ + 307.0, + 109.0, + 110.0, + 127.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 534, + "image_id": 388, + "category_id": 1, + "segmentation": [ + [ + 439.0, + 76.0, + 737.0, + 76.0, + 737.0, + 403.0, + 439.0, + 403.0 + ] + ], + "area": 97446.0, + "bbox": [ + 439.0, + 76.0, + 298.0, + 327.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 535, + "image_id": 389, + "category_id": 1, + "segmentation": [ + [ + 316.0, + 182.00000000000003, + 658.0, + 182.00000000000003, + 658.0, + 604.0, + 316.0, + 604.0 + ] + ], + "area": 144324.0, + "bbox": [ + 316.0, + 182.00000000000003, + 342.0, + 421.99999999999994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 536, + "image_id": 390, + "category_id": 1, + "segmentation": [ + [ + 61.0, + 125.99999999999999, + 121.0, + 125.99999999999999, + 121.0, + 206.0, + 61.0, + 206.0 + ] + ], + "area": 4800.000000000001, + "bbox": [ + 61.0, + 125.99999999999999, + 60.0, + 80.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 537, + "image_id": 390, + "category_id": 1, + "segmentation": [ + [ + 184.0, + 117.0, + 251.0, + 117.0, + 251.0, + 192.99999999999997, + 184.0, + 192.99999999999997 + ] + ], + "area": 5091.999999999998, + "bbox": [ + 184.0, + 117.0, + 67.0, + 76.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 538, + "image_id": 390, + "category_id": 1, + "segmentation": [ + [ + 350.00000000000006, + 114.99999999999999, + 439.0, + 114.99999999999999, + 439.0, + 215.0, + 350.00000000000006, + 215.0 + ] + ], + "area": 8899.999999999996, + "bbox": [ + 350.00000000000006, + 114.99999999999999, + 89.0, + 100.0 + ], + "iscrowd": 0, + "attributes": "" + } + ] +} \ No newline at end of file diff --git a/yolo_mindspore/dataset/coco/annotations.json b/yolo_mindspore/dataset/coco/annotations.json new file mode 100644 index 0000000..1985f61 --- /dev/null +++ b/yolo_mindspore/dataset/coco/annotations.json @@ -0,0 +1,17921 @@ +{ + "licenses": [ + { + "name": "", + "id": 0, + "url": "" + } + ], + "info": { + "contributor": "", + "date_created": "", + "description": "", + "url": "", + "version": "", + "year": "" + }, + "categories": [ + { + "id": 0, + "name": "with_mask", + "supercategory": "" + }, + { + "id": 1, + "name": "without_mask", + "supercategory": "" + } + ], + "images": [ + { + "id": 1, + "width": 960, + "height": 540, + "file_name": "0000.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 2, + "width": 640, + "height": 480, + "file_name": "00000.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 3, + "width": 960, + "height": 540, + "file_name": "0001.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 4, + "width": 1024, + "height": 1024, + "file_name": "00010.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 5, + "width": 960, + "height": 540, + "file_name": "0003.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 6, + "width": 1024, + "height": 1024, + "file_name": "00030.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 7, + "width": 960, + "height": 540, + "file_name": "0004.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 8, + "width": 960, + "height": 540, + "file_name": "0006.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 9, + "width": 640, + "height": 480, + "file_name": "00060.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 10, + "width": 960, + "height": 540, + "file_name": "0007.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 11, + "width": 334, + "height": 500, + "file_name": "00070.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 12, + "width": 960, + "height": 540, + "file_name": "0009.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 13, + "width": 960, + "height": 540, + "file_name": "0010.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 14, + "width": 1024, + "height": 1463, + "file_name": "00100.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 15, + "width": 1024, + "height": 810, + "file_name": "00130.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 16, + "width": 960, + "height": 540, + "file_name": "0015.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 17, + "width": 960, + "height": 540, + "file_name": "0016.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 18, + "width": 960, + "height": 540, + "file_name": "0017.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 19, + "width": 960, + "height": 540, + "file_name": "0018.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 20, + "width": 960, + "height": 540, + "file_name": "0021.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 21, + "width": 960, + "height": 540, + "file_name": "0023.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 22, + "width": 960, + "height": 540, + "file_name": "0025.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 23, + "width": 960, + "height": 540, + "file_name": "0026.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 24, + "width": 960, + "height": 540, + "file_name": "0027.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 25, + "width": 960, + "height": 540, + "file_name": "0029.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 26, + "width": 960, + "height": 540, + "file_name": "0032.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 27, + "width": 960, + "height": 540, + "file_name": "0033.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 28, + "width": 960, + "height": 540, + "file_name": "0034.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 29, + "width": 960, + "height": 540, + "file_name": "0037.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 30, + "width": 960, + "height": 540, + "file_name": "0038.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 31, + "width": 960, + "height": 540, + "file_name": "0039.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 32, + "width": 960, + "height": 540, + "file_name": "0041.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 33, + "width": 960, + "height": 540, + "file_name": "0042.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 34, + "width": 960, + "height": 540, + "file_name": "0045.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 35, + "width": 960, + "height": 540, + "file_name": "0047.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 36, + "width": 960, + "height": 540, + "file_name": "0051.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 37, + "width": 960, + "height": 540, + "file_name": "0054.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 38, + "width": 960, + "height": 540, + "file_name": "00550.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 39, + "width": 375, + "height": 500, + "file_name": "00570.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 40, + "width": 960, + "height": 540, + "file_name": "0058.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 41, + "width": 960, + "height": 540, + "file_name": "0059.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 42, + "width": 1024, + "height": 768, + "file_name": "00590.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 43, + "width": 960, + "height": 540, + "file_name": "0060.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 44, + "width": 1024, + "height": 683, + "file_name": "00600.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 45, + "width": 1024, + "height": 1532, + "file_name": "00620.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 46, + "width": 960, + "height": 540, + "file_name": "0064.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 47, + "width": 1024, + "height": 768, + "file_name": "00640.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 48, + "width": 960, + "height": 540, + "file_name": "0065.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 49, + "width": 1024, + "height": 576, + "file_name": "00660.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 50, + "width": 960, + "height": 540, + "file_name": "0067.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 51, + "width": 960, + "height": 540, + "file_name": "0069.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 52, + "width": 1024, + "height": 1057, + "file_name": "00690.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 53, + "width": 640, + "height": 480, + "file_name": "00700.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 54, + "width": 960, + "height": 540, + "file_name": "0071.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 55, + "width": 1024, + "height": 576, + "file_name": "00710.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 56, + "width": 960, + "height": 540, + "file_name": "0073.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 57, + "width": 1024, + "height": 819, + "file_name": "00730.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 58, + "width": 1024, + "height": 736, + "file_name": "00740.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 59, + "width": 960, + "height": 540, + "file_name": "0075.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 60, + "width": 960, + "height": 540, + "file_name": "0076.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 61, + "width": 960, + "height": 540, + "file_name": "0078.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 62, + "width": 640, + "height": 480, + "file_name": "00780.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 63, + "width": 960, + "height": 540, + "file_name": "0081.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 64, + "width": 375, + "height": 500, + "file_name": "00820.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 65, + "width": 960, + "height": 540, + "file_name": "0083.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 66, + "width": 960, + "height": 540, + "file_name": "0084.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 67, + "width": 1024, + "height": 1392, + "file_name": "00850.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 68, + "width": 960, + "height": 540, + "file_name": "0086.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 69, + "width": 1024, + "height": 673, + "file_name": "00860.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 70, + "width": 960, + "height": 540, + "file_name": "0092.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 71, + "width": 640, + "height": 480, + "file_name": "00920.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 72, + "width": 960, + "height": 540, + "file_name": "0093.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 73, + "width": 1024, + "height": 1024, + "file_name": "00940.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 74, + "width": 1024, + "height": 1019, + "file_name": "00960.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 75, + "width": 640, + "height": 480, + "file_name": "00970.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 76, + "width": 960, + "height": 540, + "file_name": "0098.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 77, + "width": 1024, + "height": 839, + "file_name": "00990.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 78, + "width": 640, + "height": 480, + "file_name": "01000.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 79, + "width": 960, + "height": 540, + "file_name": "0101.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 80, + "width": 960, + "height": 540, + "file_name": "01020.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 81, + "width": 640, + "height": 480, + "file_name": "01030.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 82, + "width": 640, + "height": 480, + "file_name": "01040.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 83, + "width": 640, + "height": 480, + "file_name": "01050.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 84, + "width": 640, + "height": 480, + "file_name": "01060.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 85, + "width": 960, + "height": 540, + "file_name": "0107.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 86, + "width": 640, + "height": 480, + "file_name": "01070.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 87, + "width": 960, + "height": 540, + "file_name": "0108.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 88, + "width": 375, + "height": 500, + "file_name": "01080.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 89, + "width": 960, + "height": 540, + "file_name": "0109.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 90, + "width": 960, + "height": 540, + "file_name": "0110.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 91, + "width": 960, + "height": 540, + "file_name": "0112.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 92, + "width": 640, + "height": 480, + "file_name": "01120.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 93, + "width": 960, + "height": 540, + "file_name": "0113.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 94, + "width": 960, + "height": 540, + "file_name": "0114.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 95, + "width": 500, + "height": 372, + "file_name": "01150.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 96, + "width": 960, + "height": 540, + "file_name": "0116.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 97, + "width": 640, + "height": 480, + "file_name": "01160.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 98, + "width": 640, + "height": 480, + "file_name": "01170.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 99, + "width": 640, + "height": 480, + "file_name": "01200.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 100, + "width": 960, + "height": 540, + "file_name": "0121.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 101, + "width": 1024, + "height": 982, + "file_name": "01220.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 102, + "width": 960, + "height": 540, + "file_name": "0124.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 103, + "width": 960, + "height": 540, + "file_name": "0125.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 104, + "width": 960, + "height": 540, + "file_name": "0126.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 105, + "width": 1024, + "height": 732, + "file_name": "01260.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 106, + "width": 960, + "height": 540, + "file_name": "0127.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 107, + "width": 960, + "height": 540, + "file_name": "0128.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 108, + "width": 640, + "height": 480, + "file_name": "01310.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 109, + "width": 1024, + "height": 1538, + "file_name": "01330.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 110, + "width": 1024, + "height": 1536, + "file_name": "01350.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 111, + "width": 640, + "height": 480, + "file_name": "01360.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 112, + "width": 1024, + "height": 1370, + "file_name": "01380.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 113, + "width": 1024, + "height": 1543, + "file_name": "01400.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 114, + "width": 1024, + "height": 1182, + "file_name": "01410.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 115, + "width": 500, + "height": 375, + "file_name": "01420.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 116, + "width": 640, + "height": 480, + "file_name": "01450.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 117, + "width": 1024, + "height": 754, + "file_name": "01460.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 118, + "width": 1024, + "height": 1024, + "file_name": "01470.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 119, + "width": 1024, + "height": 1482, + "file_name": "01500.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 120, + "width": 500, + "height": 375, + "file_name": "01530.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 121, + "width": 640, + "height": 480, + "file_name": "01550.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 122, + "width": 1024, + "height": 1392, + "file_name": "01560.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 123, + "width": 1024, + "height": 683, + "file_name": "01580.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 124, + "width": 1024, + "height": 710, + "file_name": "01590.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 125, + "width": 1024, + "height": 768, + "file_name": "01610.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 126, + "width": 1024, + "height": 640, + "file_name": "01620.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 127, + "width": 1024, + "height": 1207, + "file_name": "01630.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 128, + "width": 1024, + "height": 681, + "file_name": "01640.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 129, + "width": 1024, + "height": 1024, + "file_name": "01650.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 130, + "width": 960, + "height": 540, + "file_name": "01660.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 131, + "width": 640, + "height": 480, + "file_name": "01670.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 132, + "width": 960, + "height": 540, + "file_name": "01680.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 133, + "width": 640, + "height": 480, + "file_name": "01690.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 134, + "width": 1024, + "height": 1420, + "file_name": "01700.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 135, + "width": 1024, + "height": 1545, + "file_name": "01710.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 136, + "width": 640, + "height": 480, + "file_name": "01730.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 137, + "width": 500, + "height": 332, + "file_name": "01740.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 138, + "width": 1024, + "height": 634, + "file_name": "01760.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 139, + "width": 500, + "height": 333, + "file_name": "01770.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 140, + "width": 1024, + "height": 1024, + "file_name": "01780.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 141, + "width": 1024, + "height": 1493, + "file_name": "01800.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 142, + "width": 640, + "height": 480, + "file_name": "01870.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 143, + "width": 1024, + "height": 577, + "file_name": "01890.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 144, + "width": 640, + "height": 480, + "file_name": "01900.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 145, + "width": 1024, + "height": 1532, + "file_name": "01910.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 146, + "width": 1024, + "height": 640, + "file_name": "01920.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 147, + "width": 500, + "height": 375, + "file_name": "01960.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 148, + "width": 1024, + "height": 1374, + "file_name": "01970.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 149, + "width": 1024, + "height": 754, + "file_name": "01980.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 150, + "width": 640, + "height": 480, + "file_name": "01990.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 151, + "width": 1024, + "height": 820, + "file_name": "02040.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 152, + "width": 1024, + "height": 1280, + "file_name": "02080.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 153, + "width": 960, + "height": 540, + "file_name": "02100.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 154, + "width": 640, + "height": 480, + "file_name": "02130.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 155, + "width": 1024, + "height": 1437, + "file_name": "02140.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 156, + "width": 1024, + "height": 1006, + "file_name": "02160.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 157, + "width": 640, + "height": 480, + "file_name": "02170.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 158, + "width": 640, + "height": 480, + "file_name": "02210.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 159, + "width": 1024, + "height": 577, + "file_name": "02240.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 160, + "width": 1024, + "height": 1693, + "file_name": "02260.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 161, + "width": 640, + "height": 480, + "file_name": "02280.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 162, + "width": 1024, + "height": 576, + "file_name": "02290.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 163, + "width": 640, + "height": 480, + "file_name": "02300.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 164, + "width": 640, + "height": 480, + "file_name": "02310.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 165, + "width": 500, + "height": 375, + "file_name": "02340.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 166, + "width": 500, + "height": 375, + "file_name": "02350.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 167, + "width": 1024, + "height": 683, + "file_name": "02370.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 168, + "width": 1024, + "height": 1536, + "file_name": "02380.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 169, + "width": 640, + "height": 480, + "file_name": "02400.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 170, + "width": 640, + "height": 480, + "file_name": "02420.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 171, + "width": 960, + "height": 540, + "file_name": "02440.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 172, + "width": 640, + "height": 480, + "file_name": "02450.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 173, + "width": 1024, + "height": 1408, + "file_name": "02490.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 174, + "width": 960, + "height": 540, + "file_name": "02500.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 175, + "width": 1024, + "height": 1778, + "file_name": "02510.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 176, + "width": 1024, + "height": 1392, + "file_name": "02520.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 177, + "width": 1024, + "height": 1471, + "file_name": "02530.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 178, + "width": 640, + "height": 480, + "file_name": "02540.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 179, + "width": 1024, + "height": 1540, + "file_name": "02570.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 180, + "width": 640, + "height": 480, + "file_name": "02580.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 181, + "width": 640, + "height": 480, + "file_name": "02600.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 182, + "width": 640, + "height": 480, + "file_name": "02610.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 183, + "width": 1024, + "height": 680, + "file_name": "02630.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 184, + "width": 375, + "height": 500, + "file_name": "02640.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 185, + "width": 640, + "height": 480, + "file_name": "02650.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 186, + "width": 1024, + "height": 1536, + "file_name": "02670.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 187, + "width": 500, + "height": 333, + "file_name": "02710.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 188, + "width": 960, + "height": 540, + "file_name": "02720.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 189, + "width": 500, + "height": 375, + "file_name": "02730.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 190, + "width": 1024, + "height": 1536, + "file_name": "02740.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 191, + "width": 1024, + "height": 1380, + "file_name": "02750.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 192, + "width": 1024, + "height": 678, + "file_name": "02760.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 193, + "width": 1024, + "height": 1326, + "file_name": "02780.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 194, + "width": 640, + "height": 480, + "file_name": "02800.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 195, + "width": 640, + "height": 480, + "file_name": "02810.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 196, + "width": 1024, + "height": 925, + "file_name": "02840.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 197, + "width": 640, + "height": 480, + "file_name": "02850.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 198, + "width": 1024, + "height": 1542, + "file_name": "02860.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 199, + "width": 960, + "height": 540, + "file_name": "02880.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 200, + "width": 640, + "height": 480, + "file_name": "02890.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 201, + "width": 640, + "height": 480, + "file_name": "02900.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 202, + "width": 640, + "height": 480, + "file_name": "02910.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 203, + "width": 1024, + "height": 1504, + "file_name": "02920.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 204, + "width": 1024, + "height": 576, + "file_name": "02930.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 205, + "width": 960, + "height": 540, + "file_name": "02950.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 206, + "width": 640, + "height": 480, + "file_name": "02990.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 207, + "width": 960, + "height": 540, + "file_name": "03030.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 208, + "width": 500, + "height": 375, + "file_name": "03050.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 209, + "width": 640, + "height": 480, + "file_name": "03060.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 210, + "width": 640, + "height": 480, + "file_name": "03150.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 211, + "width": 1024, + "height": 861, + "file_name": "03170.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 212, + "width": 1024, + "height": 1402, + "file_name": "03180.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 213, + "width": 1024, + "height": 1526, + "file_name": "03250.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 214, + "width": 1024, + "height": 1297, + "file_name": "03260.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 215, + "width": 1024, + "height": 1216, + "file_name": "03280.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 216, + "width": 640, + "height": 480, + "file_name": "03290.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 217, + "width": 1024, + "height": 1365, + "file_name": "03320.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 218, + "width": 640, + "height": 480, + "file_name": "03330.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 219, + "width": 1024, + "height": 1094, + "file_name": "03340.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 220, + "width": 640, + "height": 480, + "file_name": "03350.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 221, + "width": 640, + "height": 480, + "file_name": "03370.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 222, + "width": 1024, + "height": 1060, + "file_name": "03390.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 223, + "width": 640, + "height": 480, + "file_name": "03410.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 224, + "width": 1024, + "height": 1497, + "file_name": "03430.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 225, + "width": 1024, + "height": 576, + "file_name": "03440.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 226, + "width": 640, + "height": 480, + "file_name": "03460.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 227, + "width": 1024, + "height": 1540, + "file_name": "03480.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 228, + "width": 1024, + "height": 683, + "file_name": "03490.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 229, + "width": 1024, + "height": 1091, + "file_name": "03520.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 230, + "width": 1024, + "height": 1334, + "file_name": "03530.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 231, + "width": 1024, + "height": 1155, + "file_name": "03580.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 232, + "width": 640, + "height": 480, + "file_name": "03610.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 233, + "width": 1024, + "height": 1522, + "file_name": "03630.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 234, + "width": 960, + "height": 540, + "file_name": "03650.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 235, + "width": 640, + "height": 480, + "file_name": "03660.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 236, + "width": 1024, + "height": 1541, + "file_name": "03680.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 237, + "width": 640, + "height": 480, + "file_name": "03700.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 238, + "width": 1024, + "height": 1536, + "file_name": "03710.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 239, + "width": 640, + "height": 480, + "file_name": "03730.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 240, + "width": 500, + "height": 375, + "file_name": "03740.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 241, + "width": 640, + "height": 480, + "file_name": "03750.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 242, + "width": 1024, + "height": 1543, + "file_name": "03760.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 243, + "width": 640, + "height": 480, + "file_name": "03780.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 244, + "width": 1024, + "height": 1532, + "file_name": "03800.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 245, + "width": 640, + "height": 480, + "file_name": "03810.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 246, + "width": 1024, + "height": 1366, + "file_name": "03840.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 247, + "width": 1024, + "height": 680, + "file_name": "03890.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 248, + "width": 640, + "height": 480, + "file_name": "03920.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 249, + "width": 1024, + "height": 1534, + "file_name": "03940.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 250, + "width": 1024, + "height": 683, + "file_name": "03950.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 251, + "width": 960, + "height": 540, + "file_name": "03970.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 252, + "width": 640, + "height": 480, + "file_name": "03980.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 253, + "width": 1024, + "height": 1386, + "file_name": "04000.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 254, + "width": 640, + "height": 480, + "file_name": "04050.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 255, + "width": 1024, + "height": 768, + "file_name": "04070.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 256, + "width": 1024, + "height": 1529, + "file_name": "04110.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 257, + "width": 640, + "height": 480, + "file_name": "04120.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 258, + "width": 1024, + "height": 1582, + "file_name": "04130.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 259, + "width": 640, + "height": 480, + "file_name": "04230.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 260, + "width": 1024, + "height": 641, + "file_name": "04240.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 261, + "width": 1024, + "height": 713, + "file_name": "04260.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 262, + "width": 1024, + "height": 1536, + "file_name": "04290.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 263, + "width": 1024, + "height": 1542, + "file_name": "04300.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 264, + "width": 500, + "height": 375, + "file_name": "04320.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 265, + "width": 1024, + "height": 1540, + "file_name": "04330.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 266, + "width": 1024, + "height": 1530, + "file_name": "04360.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 267, + "width": 1024, + "height": 1366, + "file_name": "04380.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 268, + "width": 1024, + "height": 1173, + "file_name": "04400.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 269, + "width": 1024, + "height": 1535, + "file_name": "04410.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 270, + "width": 1024, + "height": 1434, + "file_name": "04470.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 271, + "width": 1024, + "height": 768, + "file_name": "04490.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 272, + "width": 640, + "height": 480, + "file_name": "04520.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 273, + "width": 332, + "height": 500, + "file_name": "04530.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 274, + "width": 1024, + "height": 1434, + "file_name": "04540.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 275, + "width": 1024, + "height": 576, + "file_name": "04550.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 276, + "width": 1024, + "height": 1492, + "file_name": "04560.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 277, + "width": 1024, + "height": 754, + "file_name": "04570.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 278, + "width": 1024, + "height": 642, + "file_name": "04580.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 279, + "width": 1024, + "height": 684, + "file_name": "04600.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 280, + "width": 960, + "height": 540, + "file_name": "04620.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 281, + "width": 1024, + "height": 714, + "file_name": "04630.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 282, + "width": 1024, + "height": 1368, + "file_name": "04640.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 283, + "width": 375, + "height": 500, + "file_name": "04670.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 284, + "width": 640, + "height": 480, + "file_name": "04680.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 285, + "width": 330, + "height": 500, + "file_name": "04700.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 286, + "width": 1024, + "height": 576, + "file_name": "04710.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 287, + "width": 1024, + "height": 1708, + "file_name": "04730.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 288, + "width": 500, + "height": 375, + "file_name": "04740.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 289, + "width": 640, + "height": 480, + "file_name": "04760.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 290, + "width": 1024, + "height": 837, + "file_name": "04770.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 291, + "width": 1024, + "height": 830, + "file_name": "04780.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 292, + "width": 1024, + "height": 688, + "file_name": "04810.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 293, + "width": 500, + "height": 375, + "file_name": "04820.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 294, + "width": 640, + "height": 480, + "file_name": "04840.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 295, + "width": 1024, + "height": 1473, + "file_name": "04850.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 296, + "width": 1024, + "height": 1182, + "file_name": "04860.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 297, + "width": 1024, + "height": 1724, + "file_name": "04890.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 298, + "width": 640, + "height": 480, + "file_name": "04920.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 299, + "width": 640, + "height": 480, + "file_name": "04930.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 300, + "width": 1024, + "height": 1539, + "file_name": "04950.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 301, + "width": 1024, + "height": 576, + "file_name": "04960.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 302, + "width": 500, + "height": 375, + "file_name": "04980.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 303, + "width": 640, + "height": 480, + "file_name": "04990.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 304, + "width": 640, + "height": 480, + "file_name": "05020.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 305, + "width": 1024, + "height": 1572, + "file_name": "05050.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 306, + "width": 1024, + "height": 1481, + "file_name": "05070.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 307, + "width": 1024, + "height": 684, + "file_name": "05080.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 308, + "width": 640, + "height": 480, + "file_name": "05100.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 309, + "width": 640, + "height": 480, + "file_name": "05110.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 310, + "width": 1024, + "height": 1541, + "file_name": "05120.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 311, + "width": 1024, + "height": 683, + "file_name": "05170.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 312, + "width": 640, + "height": 480, + "file_name": "05180.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 313, + "width": 1024, + "height": 672, + "file_name": "05190.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 314, + "width": 640, + "height": 480, + "file_name": "05200.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 315, + "width": 1024, + "height": 1485, + "file_name": "05210.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 316, + "width": 1024, + "height": 1075, + "file_name": "05230.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 317, + "width": 640, + "height": 480, + "file_name": "05260.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 318, + "width": 1024, + "height": 1579, + "file_name": "05270.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 319, + "width": 1024, + "height": 754, + "file_name": "05280.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 320, + "width": 1024, + "height": 1231, + "file_name": "05290.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 321, + "width": 640, + "height": 480, + "file_name": "05310.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 322, + "width": 640, + "height": 480, + "file_name": "05320.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 323, + "width": 1024, + "height": 754, + "file_name": "05330.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 324, + "width": 500, + "height": 375, + "file_name": "05350.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 325, + "width": 640, + "height": 480, + "file_name": "05360.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 326, + "width": 1024, + "height": 732, + "file_name": "05370.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 327, + "width": 1024, + "height": 678, + "file_name": "05400.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 328, + "width": 500, + "height": 341, + "file_name": "05420.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 329, + "width": 640, + "height": 480, + "file_name": "05430.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 330, + "width": 640, + "height": 480, + "file_name": "05440.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 331, + "width": 640, + "height": 480, + "file_name": "05460.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 332, + "width": 1024, + "height": 1536, + "file_name": "05470.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 333, + "width": 1024, + "height": 1536, + "file_name": "05480.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 334, + "width": 1024, + "height": 790, + "file_name": "05510.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 335, + "width": 1024, + "height": 1424, + "file_name": "05520.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 336, + "width": 640, + "height": 480, + "file_name": "05530.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 337, + "width": 640, + "height": 480, + "file_name": "05540.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 338, + "width": 1024, + "height": 1447, + "file_name": "05550.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 339, + "width": 1024, + "height": 747, + "file_name": "05580.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 340, + "width": 1024, + "height": 1463, + "file_name": "05590.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 341, + "width": 640, + "height": 480, + "file_name": "05610.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 342, + "width": 1024, + "height": 1377, + "file_name": "05620.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 343, + "width": 500, + "height": 375, + "file_name": "05630.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 344, + "width": 1024, + "height": 1367, + "file_name": "05680.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 345, + "width": 640, + "height": 480, + "file_name": "05690.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 346, + "width": 333, + "height": 500, + "file_name": "05700.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 347, + "width": 640, + "height": 480, + "file_name": "05710.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 348, + "width": 1024, + "height": 1128, + "file_name": "05730.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 349, + "width": 1024, + "height": 1331, + "file_name": "05760.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 350, + "width": 1024, + "height": 671, + "file_name": "05770.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 351, + "width": 640, + "height": 480, + "file_name": "05780.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 352, + "width": 1024, + "height": 1521, + "file_name": "05790.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 353, + "width": 640, + "height": 480, + "file_name": "05840.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 354, + "width": 1024, + "height": 1622, + "file_name": "05850.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 355, + "width": 1024, + "height": 1541, + "file_name": "05870.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 356, + "width": 960, + "height": 540, + "file_name": "05880.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 357, + "width": 640, + "height": 480, + "file_name": "05890.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 358, + "width": 1024, + "height": 1536, + "file_name": "05910.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 359, + "width": 1024, + "height": 949, + "file_name": "05920.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 360, + "width": 960, + "height": 540, + "file_name": "05960.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 361, + "width": 1024, + "height": 1138, + "file_name": "06000.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 362, + "width": 640, + "height": 480, + "file_name": "06010.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 363, + "width": 1024, + "height": 1424, + "file_name": "06030.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 364, + "width": 353, + "height": 500, + "file_name": "06050.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 365, + "width": 1024, + "height": 1536, + "file_name": "06090.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 366, + "width": 960, + "height": 540, + "file_name": "06110.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 367, + "width": 640, + "height": 480, + "file_name": "06120.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 368, + "width": 1024, + "height": 576, + "file_name": "06150.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 369, + "width": 640, + "height": 480, + "file_name": "06160.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 370, + "width": 1024, + "height": 754, + "file_name": "06170.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 371, + "width": 500, + "height": 357, + "file_name": "06180.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 372, + "width": 640, + "height": 480, + "file_name": "06190.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 373, + "width": 333, + "height": 500, + "file_name": "06210.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 374, + "width": 1024, + "height": 1365, + "file_name": "06240.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 375, + "width": 1024, + "height": 768, + "file_name": "06260.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 376, + "width": 500, + "height": 375, + "file_name": "06270.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 377, + "width": 1024, + "height": 684, + "file_name": "06280.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 378, + "width": 1024, + "height": 757, + "file_name": "06290.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 379, + "width": 1024, + "height": 680, + "file_name": "06300.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 380, + "width": 500, + "height": 374, + "file_name": "06340.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 381, + "width": 640, + "height": 480, + "file_name": "06370.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 382, + "width": 1024, + "height": 1563, + "file_name": "06380.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 383, + "width": 640, + "height": 480, + "file_name": "06390.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 384, + "width": 640, + "height": 480, + "file_name": "06400.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 385, + "width": 1024, + "height": 1541, + "file_name": "06430.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 386, + "width": 500, + "height": 356, + "file_name": "06450.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 387, + "width": 640, + "height": 480, + "file_name": "06460.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 388, + "width": 1024, + "height": 867, + "file_name": "06470.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 389, + "width": 1024, + "height": 1540, + "file_name": "06480.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + }, + { + "id": 390, + "width": 500, + "height": 375, + "file_name": "06490.jpg", + "license": 0, + "flickr_url": "", + "color_url": "", + "date_captured": "" + } + ], + "annotations": [ + { + "id": 1, + "image_id": 1, + "category_id": 30, + "segmentation": [ + [ + 182.00016, + 177.99993, + 303.99983999999995, + 177.99993, + 303.99983999999995, + 316.99971, + 182.00016, + 316.99971 + ] + ], + "area": 16957.928680070392, + "bbox": [ + 182.00016, + 177.99993, + 121.99968, + 138.99978 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 2, + "image_id": 1, + "category_id": 30, + "segmentation": [ + [ + 645.0, + 211.99995, + 769.9996800000001, + 211.99995, + 769.9996800000001, + 302.00013, + 645.0, + 302.00013 + ] + ], + "area": 11249.993699942412, + "bbox": [ + 645.0, + 211.99995, + 124.99967999999998, + 90.00018 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 3, + "image_id": 2, + "category_id": 1, + "segmentation": [ + [ + 282.0, + 99.00000000000001, + 390.0, + 99.00000000000001, + 390.0, + 228.0, + 282.0, + 228.0 + ] + ], + "area": 13932.0, + "bbox": [ + 282.0, + 99.00000000000001, + 108.0, + 129.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 4, + "image_id": 3, + "category_id": 30, + "segmentation": [ + [ + 330.00048, + 49.00014000000001, + 626.00016, + 49.00014000000001, + 626.00016, + 450.9999, + 330.00048, + 450.9999 + ] + ], + "area": 118991.80032007684, + "bbox": [ + 330.00048, + 49.00014000000001, + 295.99968, + 401.99976 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 5, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 371.0, + 34.0, + 530.0, + 34.0, + 530.0, + 238.0, + 371.0, + 238.0 + ] + ], + "area": 32436.0, + "bbox": [ + 371.0, + 34.0, + 159.0, + 204.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 6, + "image_id": 4, + "category_id": 1, + "segmentation": [ + [ + 575.0, + 64.0, + 712.0, + 64.0, + 712.0, + 248.0, + 575.0, + 248.0 + ] + ], + "area": 25208.0, + "bbox": [ + 575.0, + 64.0, + 137.0, + 184.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 7, + "image_id": 5, + "category_id": 30, + "segmentation": [ + [ + 243.00048, + 108.99981000000001, + 407.00016, + 108.99981000000001, + 407.00016, + 277.99983, + 243.00048, + 277.99983 + ] + ], + "area": 27715.94919999359, + "bbox": [ + 243.00048, + 108.99981000000001, + 163.99968, + 169.00002 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 8, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 171.0, + 93.0, + 343.0, + 93.0, + 343.0, + 314.0, + 171.0, + 314.0 + ] + ], + "area": 38012.0, + "bbox": [ + 171.0, + 93.0, + 172.0, + 221.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 9, + "image_id": 6, + "category_id": 1, + "segmentation": [ + [ + 674.0, + 82.0, + 825.0, + 82.0, + 825.0, + 259.0, + 674.0, + 259.0 + ] + ], + "area": 26727.0, + "bbox": [ + 674.0, + 82.0, + 151.0, + 177.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 10, + "image_id": 7, + "category_id": 30, + "segmentation": [ + [ + 387.99984, + 61.999829999999996, + 564.9998400000001, + 61.999829999999996, + 564.9998400000001, + 244.99989, + 387.99984, + 244.99989 + ] + ], + "area": 32391.01062000001, + "bbox": [ + 387.99984, + 61.999829999999996, + 177.0, + 183.00006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 11, + "image_id": 8, + "category_id": 30, + "segmentation": [ + [ + 189.00047999999998, + 60.99975, + 329.00016, + 60.99975, + 329.00016, + 203.99984999999998, + 189.00047999999998, + 203.99984999999998 + ] + ], + "area": 20019.968239968, + "bbox": [ + 189.00047999999998, + 60.99975, + 139.99967999999998, + 143.0001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 12, + "image_id": 8, + "category_id": 30, + "segmentation": [ + [ + 624.0, + 165.99978, + 767.9999999999999, + 165.99978, + 767.9999999999999, + 299.9997, + 624.0, + 299.9997 + ] + ], + "area": 19295.98847999999, + "bbox": [ + 624.0, + 165.99978, + 144.0, + 133.99992 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 13, + "image_id": 9, + "category_id": 1, + "segmentation": [ + [ + 320.00000000000006, + 162.0, + 406.0, + 162.0, + 406.0, + 259.0, + 320.00000000000006, + 259.0 + ] + ], + "area": 8341.999999999995, + "bbox": [ + 320.00000000000006, + 162.0, + 86.0, + 97.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 14, + "image_id": 10, + "category_id": 30, + "segmentation": [ + [ + 177.00048, + 152.00027999999998, + 221.00016000000002, + 152.00027999999998, + 221.00016000000002, + 204.00012, + 177.00048, + 204.00012 + ] + ], + "area": 2287.976320051202, + "bbox": [ + 177.00048, + 152.00027999999998, + 43.99968, + 51.999840000000006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 15, + "image_id": 10, + "category_id": 30, + "segmentation": [ + [ + 317.00016, + 129.99987, + 372.99984, + 129.99987, + 372.99984, + 187.99965, + 317.00016, + 187.99965 + ] + ], + "area": 3247.9691200704015, + "bbox": [ + 317.00016, + 129.99987, + 55.999680000000005, + 57.99978 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 16, + "image_id": 10, + "category_id": 30, + "segmentation": [ + [ + 451.99968, + 148.00023, + 481.99968000000007, + 148.00023, + 481.99968000000007, + 222.00020999999998, + 451.99968, + 222.00020999999998 + ] + ], + "area": 2219.999400000004, + "bbox": [ + 451.99968, + 148.00023, + 30.0, + 73.99998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 17, + "image_id": 10, + "category_id": 30, + "segmentation": [ + [ + 533.00016, + 174.00015000000002, + 570.99984, + 174.00015000000002, + 570.99984, + 248.00012999999998, + 533.00016, + 248.00012999999998 + ] + ], + "area": 2811.9755600063913, + "bbox": [ + 533.00016, + 174.00015000000002, + 37.99968, + 73.99998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 18, + "image_id": 10, + "category_id": 30, + "segmentation": [ + [ + 597.00048, + 162.00027, + 665.0001599999999, + 162.00027, + 665.0001599999999, + 261.00009, + 597.00048, + 261.00009 + ] + ], + "area": 6731.95608005759, + "bbox": [ + 597.00048, + 162.00027, + 67.99968, + 98.99982 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 19, + "image_id": 10, + "category_id": 30, + "segmentation": [ + [ + 781.00032, + 234.99990000000003, + 841.00032, + 234.99990000000003, + 841.00032, + 300.99978, + 781.00032, + 300.99978 + ] + ], + "area": 3959.9927999999977, + "bbox": [ + 781.00032, + 234.99990000000003, + 60.0, + 65.99988 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 20, + "image_id": 10, + "category_id": 30, + "segmentation": [ + [ + 580.99968, + 281.00007, + 622.9996799999999, + 281.00007, + 622.9996799999999, + 345.00033, + 580.99968, + 345.00033 + ] + ], + "area": 2688.010919999994, + "bbox": [ + 580.99968, + 281.00007, + 42.0, + 64.00026 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 21, + "image_id": 10, + "category_id": 30, + "segmentation": [ + [ + 375.00048000000004, + 274.00005, + 425.00016, + 274.00005, + 425.00016, + 310.00023000000004, + 375.00048000000004, + 310.00023000000004 + ] + ], + "area": 1799.9974799424012, + "bbox": [ + 375.00048000000004, + 274.00005, + 49.99968, + 36.00018 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 22, + "image_id": 10, + "category_id": 30, + "segmentation": [ + [ + 224.00016, + 260.00028000000003, + 281.00016, + 260.00028000000003, + 281.00016, + 313.0002, + 224.00016, + 313.0002 + ] + ], + "area": 3020.995439999999, + "bbox": [ + 224.00016, + 260.00028000000003, + 57.0, + 52.99992 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 23, + "image_id": 10, + "category_id": 30, + "segmentation": [ + [ + 54.00000000000001, + 174.00015, + 154.99967999999998, + 174.00015, + 154.99967999999998, + 303.00021, + 54.00000000000001, + 303.00021 + ] + ], + "area": 13028.964779980797, + "bbox": [ + 54.00000000000001, + 174.00015, + 100.99968, + 129.00006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 24, + "image_id": 11, + "category_id": 1, + "segmentation": [ + [ + 90.0, + 36.00000000000001, + 144.00000000000003, + 36.00000000000001, + 144.00000000000003, + 99.0, + 90.0, + 99.0 + ] + ], + "area": 3402.0000000000014, + "bbox": [ + 90.0, + 36.00000000000001, + 54.0, + 63.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 25, + "image_id": 12, + "category_id": 30, + "segmentation": [ + [ + 417.00048000000004, + 166.00032000000002, + 497.00016, + 166.00032000000002, + 497.00016, + 258.00012000000004, + 417.00048000000004, + 258.00012000000004 + ] + ], + "area": 7359.954560063998, + "bbox": [ + 417.00048000000004, + 166.00032000000002, + 79.99968, + 91.9998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 26, + "image_id": 13, + "category_id": 30, + "segmentation": [ + [ + 394.99968, + 92.00007, + 576.0, + 92.00007, + 576.0, + 285.99993, + 394.99968, + 285.99993 + ] + ], + "area": 35114.0367399552, + "bbox": [ + 394.99968, + 92.00007, + 181.00032, + 193.99985999999998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 27, + "image_id": 14, + "category_id": 1, + "segmentation": [ + [ + 225.0, + 129.0, + 788.0, + 129.0, + 788.0, + 749.0, + 225.0, + 749.0 + ] + ], + "area": 349060.0, + "bbox": [ + 225.0, + 129.0, + 563.0, + 620.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 28, + "image_id": 15, + "category_id": 1, + "segmentation": [ + [ + 379.0, + 66.0, + 734.0, + 66.0, + 734.0, + 506.0, + 379.0, + 506.0 + ] + ], + "area": 156200.0, + "bbox": [ + 379.0, + 66.0, + 355.0, + 440.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 29, + "image_id": 16, + "category_id": 30, + "segmentation": [ + [ + 542.00016, + 69.99992999999999, + 671.0001599999999, + 69.99992999999999, + 671.0001599999999, + 225.99999, + 542.00016, + 225.99999 + ] + ], + "area": 20124.007739999986, + "bbox": [ + 542.00016, + 69.99992999999999, + 129.0, + 156.00006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 30, + "image_id": 17, + "category_id": 30, + "segmentation": [ + [ + 531.99984, + 90.99999, + 758.00016, + 90.99999, + 758.00016, + 301.00005, + 531.99984, + 301.00005 + ] + ], + "area": 47460.08076001922, + "bbox": [ + 531.99984, + 90.99999, + 226.00032, + 210.00006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 31, + "image_id": 18, + "category_id": 30, + "segmentation": [ + [ + 242.00016000000002, + 135.00027, + 381.99984, + 135.00027, + 381.99984, + 301.00005000000004, + 242.00016000000002, + 301.00005000000004 + ] + ], + "area": 23239.916080070405, + "bbox": [ + 242.00016000000002, + 135.00027, + 139.99967999999998, + 165.99978 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 32, + "image_id": 19, + "category_id": 30, + "segmentation": [ + [ + 268.99968, + 147.00015000000002, + 388.99968, + 147.00015000000002, + 388.99968, + 317.00025, + 268.99968, + 317.00025 + ] + ], + "area": 20400.011999999995, + "bbox": [ + 268.99968, + 147.00015000000002, + 120.0, + 170.0001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 33, + "image_id": 19, + "category_id": 30, + "segmentation": [ + [ + 578.00016, + 179.00001, + 699.9998400000001, + 179.00001, + 699.9998400000001, + 360.99999, + 578.00016, + 360.99999 + ] + ], + "area": 22203.939320006404, + "bbox": [ + 578.00016, + 179.00001, + 121.99968, + 181.99998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 34, + "image_id": 20, + "category_id": 30, + "segmentation": [ + [ + 232.99968, + 70.00019999999998, + 456.0, + 70.00019999999998, + 456.0, + 353.00016000000005, + 232.99968, + 353.00016000000005 + ] + ], + "area": 63109.08163998722, + "bbox": [ + 232.99968, + 70.00019999999998, + 223.00032, + 282.99996000000004 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 35, + "image_id": 21, + "category_id": 30, + "segmentation": [ + [ + 488.00016, + 51.000029999999995, + 833.00016, + 51.000029999999995, + 833.00016, + 358.00029, + 488.00016, + 358.00029 + ] + ], + "area": 105915.08970000003, + "bbox": [ + 488.00016, + 51.000029999999995, + 345.0, + 307.00026 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 36, + "image_id": 22, + "category_id": 30, + "segmentation": [ + [ + 198.99984, + 83.99997, + 542.99952, + 83.99997, + 542.99952, + 431.00019, + 198.99984, + 431.00019 + ] + ], + "area": 119367.96463992957, + "bbox": [ + 198.99984, + 83.99997, + 343.99968, + 347.00021999999996 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 37, + "image_id": 23, + "category_id": 30, + "segmentation": [ + [ + 367.00032, + 69.99992999999999, + 656.00064, + 69.99992999999999, + 656.00064, + 308.00007, + 367.00032, + 308.00007 + ] + ], + "area": 68782.11662004479, + "bbox": [ + 367.00032, + 69.99992999999999, + 289.00032, + 238.00014 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 38, + "image_id": 24, + "category_id": 30, + "segmentation": [ + [ + 337.99967999999996, + 86.00013, + 577.9996799999999, + 86.00013, + 577.9996799999999, + 348.00003, + 337.99967999999996, + 348.00003 + ] + ], + "area": 62879.97599999998, + "bbox": [ + 337.99967999999996, + 86.00013, + 240.0, + 261.99989999999997 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 39, + "image_id": 25, + "category_id": 30, + "segmentation": [ + [ + 375.00048, + 131.99976, + 588.00048, + 131.99976, + 588.00048, + 389.99988, + 375.00048, + 389.99988 + ] + ], + "area": 54954.025560000024, + "bbox": [ + 375.00048, + 131.99976, + 213.0, + 258.00012 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 40, + "image_id": 26, + "category_id": 30, + "segmentation": [ + [ + 264.0, + 18.999899999999997, + 469.00032000000004, + 18.999899999999997, + 469.00032000000004, + 196.00002, + 264.0, + 196.00002 + ] + ], + "area": 36285.08124003841, + "bbox": [ + 264.0, + 18.999899999999997, + 205.00032000000002, + 177.00012 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 41, + "image_id": 27, + "category_id": 30, + "segmentation": [ + [ + 624.9998400000001, + 109.99989, + 794.99952, + 109.99989, + 794.99952, + 321.00003000000004, + 624.9998400000001, + 321.00003000000004 + ] + ], + "area": 35869.956279955186, + "bbox": [ + 624.9998400000001, + 109.99989, + 169.99967999999998, + 211.00014000000002 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 42, + "image_id": 28, + "category_id": 30, + "segmentation": [ + [ + 230.00064, + 68.00003999999998, + 523.00032, + 68.00003999999998, + 523.00032, + 308.99988, + 230.00064, + 308.99988 + ] + ], + "area": 70612.87600005121, + "bbox": [ + 230.00064, + 68.00003999999998, + 292.99967999999996, + 240.99984 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 43, + "image_id": 29, + "category_id": 30, + "segmentation": [ + [ + 404.00064, + 135.99981, + 559.00032, + 135.99981, + 559.00032, + 304.99983, + 404.00064, + 304.99983 + ] + ], + "area": 26194.949019993597, + "bbox": [ + 404.00064, + 135.99981, + 154.99967999999998, + 169.00002 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 44, + "image_id": 30, + "category_id": 30, + "segmentation": [ + [ + 180.00047999999998, + 38.00007, + 572.00016, + 38.00007, + 572.00016, + 356.00013, + 180.00047999999998, + 356.00013 + ] + ], + "area": 124655.92175998083, + "bbox": [ + 180.00047999999998, + 38.00007, + 391.99968, + 318.00006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 45, + "image_id": 31, + "category_id": 30, + "segmentation": [ + [ + 411.99984, + 134.99973, + 558.99984, + 134.99973, + 558.99984, + 304.99983, + 411.99984, + 304.99983 + ] + ], + "area": 24990.014699999985, + "bbox": [ + 411.99984, + 134.99973, + 147.0, + 170.0001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 46, + "image_id": 32, + "category_id": 30, + "segmentation": [ + [ + 397.00032000000004, + 118.00026000000001, + 528.0, + 118.00026000000001, + 528.0, + 293.00022, + 397.00032000000004, + 293.00022 + ] + ], + "area": 22924.938760012792, + "bbox": [ + 397.00032000000004, + 118.00026000000001, + 130.99967999999998, + 174.99996 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 47, + "image_id": 33, + "category_id": 30, + "segmentation": [ + [ + 493.99968, + 92.00007, + 799.9996799999999, + 92.00007, + 799.9996799999999, + 405.99981, + 493.99968, + 405.99981 + ] + ], + "area": 96083.92043999997, + "bbox": [ + 493.99968, + 92.00007, + 306.0, + 313.99974000000003 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 48, + "image_id": 34, + "category_id": 30, + "segmentation": [ + [ + 245.99999999999997, + 117.99999, + 496.99968000000007, + 117.99999, + 496.99968000000007, + 461.99996999999996, + 245.99999999999997, + 461.99996999999996 + ] + ], + "area": 86343.88490000642, + "bbox": [ + 245.99999999999997, + 117.99999, + 250.99968, + 343.99998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 49, + "image_id": 35, + "category_id": 30, + "segmentation": [ + [ + 269.00016000000005, + 42.99993000000001, + 495.00048000000004, + 42.99993000000001, + 495.00048000000004, + 318.99987, + 269.00016000000005, + 318.99987 + ] + ], + "area": 62376.074759980795, + "bbox": [ + 269.00016000000005, + 42.99993000000001, + 226.00032, + 275.99994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 50, + "image_id": 36, + "category_id": 30, + "segmentation": [ + [ + 119.00015999999997, + 17.000280000000004, + 398.00016, + 17.000280000000004, + 398.00016, + 338.00004, + 119.00015999999997, + 338.00004 + ] + ], + "area": 89558.93304, + "bbox": [ + 119.00015999999997, + 17.000280000000004, + 279.0, + 320.99976 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 51, + "image_id": 37, + "category_id": 30, + "segmentation": [ + [ + 444.99984, + 91.00026000000001, + 584.99952, + 91.00026000000001, + 584.99952, + 223.00002, + 444.99984, + 223.00002 + ] + ], + "area": 18479.924160076793, + "bbox": [ + 444.99984, + 91.00026000000001, + 139.99967999999998, + 131.99976 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 52, + "image_id": 38, + "category_id": 1, + "segmentation": [ + [ + 469.00000000000006, + 77.99999999999999, + 610.0000000000001, + 77.99999999999999, + 610.0000000000001, + 280.00000000000006, + 469.00000000000006, + 280.00000000000006 + ] + ], + "area": 28482.00000000002, + "bbox": [ + 469.00000000000006, + 77.99999999999999, + 141.0, + 202.00000000000003 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 53, + "image_id": 39, + "category_id": 1, + "segmentation": [ + [ + 164.99999999999997, + 34.99999999999999, + 220.0, + 34.99999999999999, + 220.0, + 122.0, + 164.99999999999997, + 122.0 + ] + ], + "area": 4785.000000000003, + "bbox": [ + 164.99999999999997, + 34.99999999999999, + 55.0, + 87.00000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 54, + "image_id": 39, + "category_id": 1, + "segmentation": [ + [ + 6.0, + 60.0, + 75.0, + 60.0, + 75.0, + 156.0, + 6.0, + 156.0 + ] + ], + "area": 6624.0, + "bbox": [ + 6.0, + 60.0, + 69.0, + 96.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 55, + "image_id": 40, + "category_id": 30, + "segmentation": [ + [ + 503.00016, + 61.000289999999985, + 666.99984, + 61.000289999999985, + 666.99984, + 295.00011, + 503.00016, + 295.00011 + ] + ], + "area": 38375.89560005759, + "bbox": [ + 503.00016, + 61.000289999999985, + 163.99968, + 233.99982 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 56, + "image_id": 41, + "category_id": 30, + "segmentation": [ + [ + 300.0, + 58.000049999999995, + 612.0, + 58.000049999999995, + 612.0, + 348.00003, + 300.0, + 348.00003 + ] + ], + "area": 90479.99376, + "bbox": [ + 300.0, + 58.000049999999995, + 312.0, + 289.99998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 57, + "image_id": 42, + "category_id": 1, + "segmentation": [ + [ + 128.0, + 253.0, + 224.0, + 253.0, + 224.0, + 365.99999999999994, + 128.0, + 365.99999999999994 + ] + ], + "area": 10847.999999999995, + "bbox": [ + 128.0, + 253.0, + 96.0, + 113.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 58, + "image_id": 42, + "category_id": 1, + "segmentation": [ + [ + 439.0, + 244.0, + 548.0, + 244.0, + 548.0, + 373.0, + 439.0, + 373.0 + ] + ], + "area": 14061.0, + "bbox": [ + 439.0, + 244.0, + 109.0, + 129.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 59, + "image_id": 42, + "category_id": 1, + "segmentation": [ + [ + 850.0, + 244.0, + 944.0, + 244.0, + 944.0, + 370.0, + 850.0, + 370.0 + ] + ], + "area": 11844.0, + "bbox": [ + 850.0, + 244.0, + 94.0, + 126.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 60, + "image_id": 43, + "category_id": 30, + "segmentation": [ + [ + 469.00031999999993, + 97.0002, + 606.0, + 97.0002, + 606.0, + 206.00028000000003, + 469.00031999999993, + 206.00028000000003 + ] + ], + "area": 14932.97607997441, + "bbox": [ + 469.00031999999993, + 97.0002, + 136.99968, + 109.00008 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 61, + "image_id": 44, + "category_id": 1, + "segmentation": [ + [ + 323.0, + 34.0, + 477.0, + 34.0, + 477.0, + 239.00000000000003, + 323.0, + 239.00000000000003 + ] + ], + "area": 31570.000000000004, + "bbox": [ + 323.0, + 34.0, + 154.0, + 205.00000000000003 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 62, + "image_id": 45, + "category_id": 1, + "segmentation": [ + [ + 388.0, + 175.0, + 589.0, + 175.0, + 589.0, + 434.00000000000006, + 388.0, + 434.00000000000006 + ] + ], + "area": 52059.000000000015, + "bbox": [ + 388.0, + 175.0, + 201.0, + 259.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 63, + "image_id": 45, + "category_id": 1, + "segmentation": [ + [ + 694.0, + 333.0, + 921.0, + 333.0, + 921.0, + 606.0, + 694.0, + 606.0 + ] + ], + "area": 61971.0, + "bbox": [ + 694.0, + 333.0, + 227.0, + 273.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 64, + "image_id": 46, + "category_id": 30, + "segmentation": [ + [ + 297.99984, + 104.99975999999997, + 606.99984, + 104.99975999999997, + 606.99984, + 441.99971999999997, + 297.99984, + 441.99971999999997 + ] + ], + "area": 104132.98763999998, + "bbox": [ + 297.99984, + 104.99975999999997, + 309.0, + 336.99996 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 65, + "image_id": 47, + "category_id": 1, + "segmentation": [ + [ + 534.0, + 148.0, + 666.0, + 148.0, + 666.0, + 323.0, + 534.0, + 323.0 + ] + ], + "area": 23100.0, + "bbox": [ + 534.0, + 148.0, + 132.0, + 175.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 66, + "image_id": 48, + "category_id": 30, + "segmentation": [ + [ + 248.99999999999997, + 62.00036999999999, + 513.0, + 62.00036999999999, + 513.0, + 322.00011, + 248.99999999999997, + 322.00011 + ] + ], + "area": 68639.93136, + "bbox": [ + 248.99999999999997, + 62.00036999999999, + 264.0, + 259.99974 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 67, + "image_id": 49, + "category_id": 1, + "segmentation": [ + [ + 341.0, + 59.000000000000014, + 580.0, + 59.000000000000014, + 580.0, + 384.0, + 341.0, + 384.0 + ] + ], + "area": 77675.0, + "bbox": [ + 341.0, + 59.000000000000014, + 239.0, + 324.99999999999994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 68, + "image_id": 50, + "category_id": 30, + "segmentation": [ + [ + 328.99968, + 65.99988, + 594.0, + 65.99988, + 594.0, + 352.00008, + 328.99968, + 352.00008 + ] + ], + "area": 75790.144520064, + "bbox": [ + 328.99968, + 65.99988, + 265.00032, + 286.0002 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 69, + "image_id": 51, + "category_id": 30, + "segmentation": [ + [ + 363.99984, + 44.00028, + 564.9998400000001, + 44.00028, + 564.9998400000001, + 204.00012, + 363.99984, + 204.00012 + ] + ], + "area": 32159.967840000012, + "bbox": [ + 363.99984, + 44.00028, + 201.0, + 159.99984 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 70, + "image_id": 52, + "category_id": 1, + "segmentation": [ + [ + 266.0, + 214.0, + 637.0, + 214.0, + 637.0, + 621.0, + 266.0, + 621.0 + ] + ], + "area": 150997.0, + "bbox": [ + 266.0, + 214.0, + 371.0, + 407.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 71, + "image_id": 53, + "category_id": 1, + "segmentation": [ + [ + 272.0, + 170.99999999999997, + 404.00000000000006, + 170.99999999999997, + 404.00000000000006, + 311.0, + 272.0, + 311.0 + ] + ], + "area": 18480.00000000001, + "bbox": [ + 272.0, + 170.99999999999997, + 132.0, + 140.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 72, + "image_id": 54, + "category_id": 30, + "segmentation": [ + [ + 266.99952, + 98.99981999999999, + 599.9995200000001, + 98.99981999999999, + 599.9995200000001, + 447.99965999999995, + 266.99952, + 447.99965999999995 + ] + ], + "area": 116216.94672, + "bbox": [ + 266.99952, + 98.99981999999999, + 333.0, + 348.99984 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 73, + "image_id": 54, + "category_id": 30, + "segmentation": [ + [ + 781.99968, + 274.00005, + 915.0, + 274.00005, + 915.0, + 405.00027000000006, + 781.99968, + 405.00027000000006 + ] + ], + "area": 17423.07118007041, + "bbox": [ + 781.99968, + 274.00005, + 133.00032, + 131.00022 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 74, + "image_id": 55, + "category_id": 1, + "segmentation": [ + [ + 402.0, + 39.999999999999986, + 567.0, + 39.999999999999986, + 567.0, + 285.0, + 402.0, + 285.0 + ] + ], + "area": 40425.0, + "bbox": [ + 402.0, + 39.999999999999986, + 165.0, + 245.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 75, + "image_id": 56, + "category_id": 30, + "segmentation": [ + [ + 225.99984, + 71.00001000000002, + 437.99951999999996, + 71.00001000000002, + 437.99951999999996, + 264.99987, + 225.99984, + 264.99987 + ] + ], + "area": 41127.90824004478, + "bbox": [ + 225.99984, + 71.00001000000002, + 211.99968, + 193.99985999999998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 76, + "image_id": 56, + "category_id": 30, + "segmentation": [ + [ + 613.0003200000001, + 118.9998, + 728.00064, + 118.9998, + 728.00064, + 255.99996, + 613.0003200000001, + 255.99996 + ] + ], + "area": 15755.062240051182, + "bbox": [ + 613.0003200000001, + 118.9998, + 115.00032, + 137.00016 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 77, + "image_id": 57, + "category_id": 1, + "segmentation": [ + [ + 153.0, + 15.99999999999999, + 617.0, + 15.99999999999999, + 617.0, + 571.0, + 153.0, + 571.0 + ] + ], + "area": 257520.0, + "bbox": [ + 153.0, + 15.99999999999999, + 464.0, + 555.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 78, + "image_id": 58, + "category_id": 1, + "segmentation": [ + [ + 164.0, + 103.99999999999999, + 323.0, + 103.99999999999999, + 323.0, + 303.0, + 164.0, + 303.0 + ] + ], + "area": 31641.0, + "bbox": [ + 164.0, + 103.99999999999999, + 159.0, + 199.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 79, + "image_id": 58, + "category_id": 1, + "segmentation": [ + [ + 700.0, + 18.0, + 892.0, + 18.0, + 892.0, + 248.99999999999997, + 700.0, + 248.99999999999997 + ] + ], + "area": 44351.99999999999, + "bbox": [ + 700.0, + 18.0, + 192.0, + 230.99999999999997 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 80, + "image_id": 58, + "category_id": 1, + "segmentation": [ + [ + 461.0, + 234.99999999999997, + 547.0, + 234.99999999999997, + 547.0, + 338.0, + 461.0, + 338.0 + ] + ], + "area": 8858.000000000002, + "bbox": [ + 461.0, + 234.99999999999997, + 86.0, + 102.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 81, + "image_id": 59, + "category_id": 30, + "segmentation": [ + [ + 315.99983999999995, + 96.00012000000001, + 530.0001599999999, + 96.00012000000001, + 530.0001599999999, + 365.00004, + 315.99983999999995, + 365.00004 + ] + ], + "area": 57566.06895997439, + "bbox": [ + 315.99983999999995, + 96.00012000000001, + 214.00032000000002, + 268.99992 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 82, + "image_id": 60, + "category_id": 30, + "segmentation": [ + [ + 504.0, + 57.99977999999999, + 706.9996799999999, + 57.99977999999999, + 706.9996799999999, + 341.99981999999994, + 504.0, + 341.99981999999994 + ] + ], + "area": 57651.91723998716, + "bbox": [ + 504.0, + 57.99977999999999, + 202.99968, + 284.00004 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 83, + "image_id": 61, + "category_id": 30, + "segmentation": [ + [ + 367.0003200000001, + 103.99995, + 630.0, + 103.99995, + 630.0, + 447.99993, + 367.0003200000001, + 447.99993 + ] + ], + "area": 90471.88466000637, + "bbox": [ + 367.0003200000001, + 103.99995, + 262.99967999999996, + 343.99998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 84, + "image_id": 62, + "category_id": 1, + "segmentation": [ + [ + 282.0, + 105.99999999999999, + 395.0, + 105.99999999999999, + 395.0, + 230.99999999999997, + 282.0, + 230.99999999999997 + ] + ], + "area": 14124.999999999998, + "bbox": [ + 282.0, + 105.99999999999999, + 113.0, + 125.00000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 85, + "image_id": 63, + "category_id": 30, + "segmentation": [ + [ + 286.00032000000004, + 100.99971, + 507.00000000000006, + 100.99971, + 507.00000000000006, + 364.99976999999996, + 286.00032000000004, + 364.99976999999996 + ] + ], + "area": 58343.92877998079, + "bbox": [ + 286.00032000000004, + 100.99971, + 220.99967999999998, + 264.00006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 86, + "image_id": 64, + "category_id": 1, + "segmentation": [ + [ + 49.00000000000001, + 87.0, + 167.99999999999997, + 87.0, + 167.99999999999997, + 231.0, + 49.00000000000001, + 231.0 + ] + ], + "area": 17135.999999999996, + "bbox": [ + 49.00000000000001, + 87.0, + 118.99999999999999, + 144.00000000000003 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 87, + "image_id": 65, + "category_id": 30, + "segmentation": [ + [ + 383.99952, + 40.00023, + 519.9998400000001, + 40.00023, + 519.9998400000001, + 169.00029, + 383.99952, + 169.00029 + ] + ], + "area": 17544.049440019207, + "bbox": [ + 383.99952, + 40.00023, + 136.00032, + 129.00006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 88, + "image_id": 66, + "category_id": 30, + "segmentation": [ + [ + 255.00048, + 117.99972, + 395.00016, + 117.99972, + 395.00016, + 255.99996, + 255.00048, + 255.99996 + ] + ], + "area": 19319.989439923196, + "bbox": [ + 255.00048, + 117.99972, + 139.99967999999998, + 138.00024 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 89, + "image_id": 67, + "category_id": 1, + "segmentation": [ + [ + 143.0, + 10.999999999999977, + 853.0, + 10.999999999999977, + 853.0, + 721.0, + 143.0, + 721.0 + ] + ], + "area": 504100.0, + "bbox": [ + 143.0, + 10.999999999999977, + 710.0, + 710.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 90, + "image_id": 68, + "category_id": 30, + "segmentation": [ + [ + 194.99952000000002, + 42.99992999999998, + 438.99983999999995, + 42.99992999999998, + 438.99983999999995, + 316.99971, + 194.99952000000002, + 316.99971 + ] + ], + "area": 66856.03399992958, + "bbox": [ + 194.99952000000002, + 42.99992999999998, + 244.00032, + 273.99978000000004 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 91, + "image_id": 68, + "category_id": 30, + "segmentation": [ + [ + 619.99968, + 181.99998, + 768.99936, + 181.99998, + 768.99936, + 408.99978, + 619.99968, + 408.99978 + ] + ], + "area": 33822.897560064004, + "bbox": [ + 619.99968, + 181.99998, + 148.99968, + 226.99980000000002 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 92, + "image_id": 69, + "category_id": 1, + "segmentation": [ + [ + 181.0, + 99.0, + 321.0, + 99.0, + 321.0, + 281.99999999999994, + 181.0, + 281.99999999999994 + ] + ], + "area": 25619.999999999993, + "bbox": [ + 181.0, + 99.0, + 140.0, + 182.99999999999997 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 93, + "image_id": 69, + "category_id": 1, + "segmentation": [ + [ + 390.0, + 23.99999999999999, + 533.0, + 23.99999999999999, + 533.0, + 215.99999999999997, + 390.0, + 215.99999999999997 + ] + ], + "area": 27455.999999999996, + "bbox": [ + 390.0, + 23.99999999999999, + 143.0, + 192.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 94, + "image_id": 69, + "category_id": 1, + "segmentation": [ + [ + 767.0, + 96.0, + 907.0, + 96.0, + 907.0, + 251.99999999999997, + 767.0, + 251.99999999999997 + ] + ], + "area": 21839.999999999996, + "bbox": [ + 767.0, + 96.0, + 140.0, + 156.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 95, + "image_id": 70, + "category_id": 30, + "segmentation": [ + [ + 358.99968, + 48.99987, + 609.99936, + 48.99987, + 609.99936, + 390.99969000000004, + 358.99968, + 390.99969000000004 + ] + ], + "area": 85841.84538005762, + "bbox": [ + 358.99968, + 48.99987, + 250.99968, + 341.99982 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 96, + "image_id": 71, + "category_id": 1, + "segmentation": [ + [ + 313.0, + 118.0, + 445.0, + 118.0, + 445.0, + 257.0, + 313.0, + 257.0 + ] + ], + "area": 18348.0, + "bbox": [ + 313.0, + 118.0, + 132.0, + 139.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 97, + "image_id": 72, + "category_id": 30, + "segmentation": [ + [ + 367.9996799999999, + 63.99998999999998, + 625.99968, + 63.99998999999998, + 625.99968, + 395.00001000000003, + 367.9996799999999, + 395.00001000000003 + ] + ], + "area": 85398.00516000006, + "bbox": [ + 367.9996799999999, + 63.99998999999998, + 258.0, + 331.00002 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 98, + "image_id": 73, + "category_id": 1, + "segmentation": [ + [ + 282.0, + 270.0, + 458.0, + 270.0, + 458.0, + 509.0, + 282.0, + 509.0 + ] + ], + "area": 42064.0, + "bbox": [ + 282.0, + 270.0, + 176.0, + 239.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 99, + "image_id": 74, + "category_id": 1, + "segmentation": [ + [ + 331.0, + 30.0, + 538.0, + 30.0, + 538.0, + 298.0, + 331.0, + 298.0 + ] + ], + "area": 55476.0, + "bbox": [ + 331.0, + 30.0, + 207.0, + 268.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 100, + "image_id": 75, + "category_id": 1, + "segmentation": [ + [ + 274.0, + 121.0, + 388.00000000000006, + 121.0, + 388.00000000000006, + 263.0, + 274.0, + 263.0 + ] + ], + "area": 16188.000000000007, + "bbox": [ + 274.0, + 121.0, + 114.0, + 142.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 101, + "image_id": 76, + "category_id": 30, + "segmentation": [ + [ + 427.99968, + 146.99961, + 546.99936, + 146.99961, + 546.99936, + 291.99987, + 427.99968, + 291.99987 + ] + ], + "area": 17254.9845399168, + "bbox": [ + 427.99968, + 146.99961, + 118.99968, + 145.00026 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 102, + "image_id": 76, + "category_id": 30, + "segmentation": [ + [ + 218.99952, + 84.00024000000002, + 341.99952, + 84.00024000000002, + 341.99952, + 219.00024000000002, + 218.99952, + 219.00024000000002 + ] + ], + "area": 16605.000000000004, + "bbox": [ + 218.99952, + 84.00024000000002, + 122.99999999999999, + 135.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 103, + "image_id": 76, + "category_id": 30, + "segmentation": [ + [ + 719.99952, + 42.00012000000001, + 903.99984, + 42.00012000000001, + 903.99984, + 234.00036, + 719.99952, + 234.00036 + ] + ], + "area": 35328.10560007679, + "bbox": [ + 719.99952, + 42.00012000000001, + 184.00032000000002, + 192.00024 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 104, + "image_id": 76, + "category_id": 30, + "segmentation": [ + [ + 6.999359999999992, + 129.00006000000002, + 145.99967999999998, + 129.00006000000002, + 145.99967999999998, + 356.99994, + 6.999359999999992, + 356.99994 + ] + ], + "area": 31692.05627996159, + "bbox": [ + 6.999359999999992, + 129.00006000000002, + 139.00032000000002, + 227.99988 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 105, + "image_id": 77, + "category_id": 1, + "segmentation": [ + [ + 484.0, + 263.0, + 766.0, + 263.0, + 766.0, + 689.9999999999999, + 484.0, + 689.9999999999999 + ] + ], + "area": 120413.99999999997, + "bbox": [ + 484.0, + 263.0, + 282.0, + 426.99999999999994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 106, + "image_id": 78, + "category_id": 1, + "segmentation": [ + [ + 342.0, + 137.0, + 454.00000000000006, + 137.0, + 454.00000000000006, + 266.0, + 342.0, + 266.0 + ] + ], + "area": 14448.000000000007, + "bbox": [ + 342.0, + 137.0, + 112.00000000000001, + 129.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 107, + "image_id": 79, + "category_id": 30, + "segmentation": [ + [ + 366.99984, + 104.99976000000002, + 503.00016, + 104.99976000000002, + 503.00016, + 241.99992, + 366.99984, + 241.99992 + ] + ], + "area": 18632.0656000512, + "bbox": [ + 366.99984, + 104.99976000000002, + 136.00032, + 137.00016 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 108, + "image_id": 80, + "category_id": 1, + "segmentation": [ + [ + 243.0, + 191.00000000000003, + 352.0, + 191.00000000000003, + 352.0, + 319.0, + 243.0, + 319.0 + ] + ], + "area": 13951.999999999996, + "bbox": [ + 243.0, + 191.00000000000003, + 109.0, + 128.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 109, + "image_id": 80, + "category_id": 1, + "segmentation": [ + [ + 517.0, + 151.0, + 645.0, + 151.0, + 645.0, + 311.99999999999994, + 517.0, + 311.99999999999994 + ] + ], + "area": 20607.999999999993, + "bbox": [ + 517.0, + 151.0, + 128.0, + 161.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 110, + "image_id": 81, + "category_id": 1, + "segmentation": [ + [ + 283.0, + 119.99999999999999, + 384.00000000000006, + 119.99999999999999, + 384.00000000000006, + 245.99999999999997, + 283.0, + 245.99999999999997 + ] + ], + "area": 12726.000000000005, + "bbox": [ + 283.0, + 119.99999999999999, + 101.00000000000001, + 126.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 111, + "image_id": 82, + "category_id": 1, + "segmentation": [ + [ + 291.0, + 107.00000000000001, + 383.00000000000006, + 107.00000000000001, + 383.00000000000006, + 217.0, + 291.0, + 217.0 + ] + ], + "area": 10120.000000000005, + "bbox": [ + 291.0, + 107.00000000000001, + 92.00000000000001, + 110.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 112, + "image_id": 83, + "category_id": 1, + "segmentation": [ + [ + 222.00000000000003, + 92.0, + 375.0, + 92.0, + 375.0, + 288.0, + 222.00000000000003, + 288.0 + ] + ], + "area": 29987.999999999993, + "bbox": [ + 222.00000000000003, + 92.0, + 153.0, + 196.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 113, + "image_id": 84, + "category_id": 1, + "segmentation": [ + [ + 308.0, + 131.99999999999997, + 442.0, + 131.99999999999997, + 442.0, + 296.99999999999994, + 308.0, + 296.99999999999994 + ] + ], + "area": 22109.999999999996, + "bbox": [ + 308.0, + 131.99999999999997, + 134.0, + 165.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 114, + "image_id": 85, + "category_id": 30, + "segmentation": [ + [ + 251.00016000000005, + 71.00028, + 462.99984, + 71.00028, + 462.99984, + 325.00008, + 251.00016000000005, + 325.00008 + ] + ], + "area": 53847.876320063995, + "bbox": [ + 251.00016000000005, + 71.00028, + 211.99968, + 253.9998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 115, + "image_id": 86, + "category_id": 1, + "segmentation": [ + [ + 291.0, + 165.0, + 384.0, + 165.0, + 384.0, + 274.0, + 291.0, + 274.0 + ] + ], + "area": 10137.0, + "bbox": [ + 291.0, + 165.0, + 93.0, + 109.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 116, + "image_id": 87, + "category_id": 30, + "segmentation": [ + [ + 267.99984, + 82.00008, + 554.0001599999999, + 82.00008, + 554.0001599999999, + 390.99996, + 267.99984, + 390.99996 + ] + ], + "area": 88374.06455996157, + "bbox": [ + 267.99984, + 82.00008, + 286.00032, + 308.99988 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 117, + "image_id": 87, + "category_id": 30, + "segmentation": [ + [ + 706.9996799999999, + 292.00014, + 846.0, + 292.00014, + 846.0, + 477.9999, + 706.9996799999999, + 477.9999 + ] + ], + "area": 25854.026159923225, + "bbox": [ + 706.9996799999999, + 292.00014, + 139.00032000000002, + 185.99975999999998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 118, + "image_id": 88, + "category_id": 1, + "segmentation": [ + [ + 206.0, + 90.00000000000003, + 293.99999999999994, + 90.00000000000003, + 293.99999999999994, + 195.0, + 206.0, + 195.0 + ] + ], + "area": 9239.99999999999, + "bbox": [ + 206.0, + 90.00000000000003, + 88.0, + 105.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 119, + "image_id": 89, + "category_id": 30, + "segmentation": [ + [ + 362.00016, + 82.99989000000001, + 627.99984, + 82.99989000000001, + 627.99984, + 331.99983000000003, + 362.00016, + 331.99983000000003 + ] + ], + "area": 66233.9043600192, + "bbox": [ + 362.00016, + 82.99989000000001, + 265.99968, + 248.99994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 120, + "image_id": 90, + "category_id": 30, + "segmentation": [ + [ + 165.0, + 105.00003, + 316.00032, + 105.00003, + 316.00032, + 343.00016999999997, + 165.0, + 343.00016999999997 + ] + ], + "area": 35938.09730004479, + "bbox": [ + 165.0, + 105.00003, + 151.00032, + 238.00014 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 121, + "image_id": 91, + "category_id": 30, + "segmentation": [ + [ + 445.99967999999996, + 80.99973, + 583.99968, + 80.99973, + 583.99968, + 277.99983, + 445.99967999999996, + 277.99983 + ] + ], + "area": 27186.013800000008, + "bbox": [ + 445.99967999999996, + 80.99973, + 138.0, + 197.0001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 122, + "image_id": 92, + "category_id": 1, + "segmentation": [ + [ + 282.0, + 110.0, + 391.0, + 110.0, + 391.0, + 253.0, + 282.0, + 253.0 + ] + ], + "area": 15587.0, + "bbox": [ + 282.0, + 110.0, + 109.0, + 143.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 123, + "image_id": 93, + "category_id": 30, + "segmentation": [ + [ + 260.00015999999994, + 103.00014, + 501.99984, + 103.00014, + 501.99984, + 373.00014000000004, + 260.00015999999994, + 373.00014000000004 + ] + ], + "area": 65339.91360000003, + "bbox": [ + 260.00015999999994, + 103.00014, + 241.99968, + 270.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 124, + "image_id": 94, + "category_id": 30, + "segmentation": [ + [ + 424.99968, + 132.00003, + 651.99936, + 132.00003, + 651.99936, + 290.00025000000005, + 424.99968, + 290.00025000000005 + ] + ], + "area": 35865.99937992961, + "bbox": [ + 424.99968, + 132.00003, + 226.99968, + 158.00021999999998 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 125, + "image_id": 95, + "category_id": 1, + "segmentation": [ + [ + 1.0000000000000009, + 61.00000000000001, + 150.0, + 61.00000000000001, + 150.0, + 237.00000000000003, + 1.0000000000000009, + 237.00000000000003 + ] + ], + "area": 26224.000000000004, + "bbox": [ + 1.0000000000000009, + 61.00000000000001, + 149.0, + 176.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 126, + "image_id": 96, + "category_id": 30, + "segmentation": [ + [ + 204.00048, + 88.00001999999998, + 506.00016000000005, + 88.00001999999998, + 506.00016000000005, + 374.00022, + 204.00048, + 374.00022 + ] + ], + "area": 86371.96887993602, + "bbox": [ + 204.00048, + 88.00001999999998, + 301.99968, + 286.0002 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 127, + "image_id": 97, + "category_id": 1, + "segmentation": [ + [ + 279.00000000000006, + 139.99999999999997, + 407.0, + 139.99999999999997, + 407.0, + 288.0, + 279.00000000000006, + 288.0 + ] + ], + "area": 18943.999999999996, + "bbox": [ + 279.00000000000006, + 139.99999999999997, + 128.0, + 148.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 128, + "image_id": 98, + "category_id": 1, + "segmentation": [ + [ + 207.00000000000003, + 69.0, + 362.0, + 69.0, + 362.0, + 247.00000000000003, + 207.00000000000003, + 247.00000000000003 + ] + ], + "area": 27590.0, + "bbox": [ + 207.00000000000003, + 69.0, + 155.0, + 178.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 129, + "image_id": 99, + "category_id": 1, + "segmentation": [ + [ + 288.0, + 151.0, + 394.00000000000006, + 151.0, + 394.00000000000006, + 279.0, + 288.0, + 279.0 + ] + ], + "area": 13568.000000000007, + "bbox": [ + 288.0, + 151.0, + 106.00000000000001, + 128.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 130, + "image_id": 100, + "category_id": 30, + "segmentation": [ + [ + 285.0, + 96.00012000000001, + 529.99968, + 96.00012000000001, + 529.99968, + 342.00036000000006, + 285.0, + 342.00036000000006 + ] + ], + "area": 60269.98007992322, + "bbox": [ + 285.0, + 96.00012000000001, + 244.99967999999998, + 246.00024000000002 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 131, + "image_id": 101, + "category_id": 1, + "segmentation": [ + [ + 218.0, + 43.99999999999999, + 501.0, + 43.99999999999999, + 501.0, + 424.0, + 218.0, + 424.0 + ] + ], + "area": 107540.0, + "bbox": [ + 218.0, + 43.99999999999999, + 283.0, + 380.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 132, + "image_id": 103, + "category_id": 30, + "segmentation": [ + [ + 386.00016, + 137.9997, + 606.0004799999999, + 137.9997, + 606.0004799999999, + 355.99986, + 386.00016, + 355.99986 + ] + ], + "area": 47960.10496005119, + "bbox": [ + 386.00016, + 137.9997, + 220.00032000000002, + 218.00016 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 133, + "image_id": 104, + "category_id": 30, + "segmentation": [ + [ + 267.99935999999997, + 48.99986999999999, + 562.9996799999999, + 48.99986999999999, + 562.9996799999999, + 247.00005, + 267.99935999999997, + 247.00005 + ] + ], + "area": 58410.11646005759, + "bbox": [ + 267.99935999999997, + 48.99986999999999, + 295.00032, + 198.00018 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 134, + "image_id": 105, + "category_id": 1, + "segmentation": [ + [ + 314.0, + 49.000000000000014, + 551.0, + 49.000000000000014, + 551.0, + 372.0, + 314.0, + 372.0 + ] + ], + "area": 76551.0, + "bbox": [ + 314.0, + 49.000000000000014, + 237.0, + 323.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 135, + "image_id": 105, + "category_id": 1, + "segmentation": [ + [ + 602.0, + 65.00000000000001, + 835.0, + 65.00000000000001, + 835.0, + 370.0, + 602.0, + 370.0 + ] + ], + "area": 71065.0, + "bbox": [ + 602.0, + 65.00000000000001, + 233.0, + 305.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 136, + "image_id": 106, + "category_id": 30, + "segmentation": [ + [ + 393.0, + 100.99998, + 513.0, + 100.99998, + 513.0, + 261.99989999999997, + 393.0, + 261.99989999999997 + ] + ], + "area": 19319.990399999995, + "bbox": [ + 393.0, + 100.99998, + 120.0, + 160.99992 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 137, + "image_id": 107, + "category_id": 30, + "segmentation": [ + [ + 265.00032, + 122.99985000000001, + 415.00032, + 122.99985000000001, + 415.00032, + 234.99963000000002, + 265.00032, + 234.99963000000002 + ] + ], + "area": 16799.967, + "bbox": [ + 265.00032, + 122.99985000000001, + 150.0, + 111.99978 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 138, + "image_id": 108, + "category_id": 1, + "segmentation": [ + [ + 257.0, + 105.0, + 394.00000000000006, + 105.0, + 394.00000000000006, + 271.0, + 257.0, + 271.0 + ] + ], + "area": 22742.00000000001, + "bbox": [ + 257.0, + 105.0, + 137.0, + 166.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 139, + "image_id": 109, + "category_id": 1, + "segmentation": [ + [ + 238.0, + 197.00000000000003, + 818.0, + 197.00000000000003, + 818.0, + 942.0, + 238.0, + 942.0 + ] + ], + "area": 432100.0, + "bbox": [ + 238.0, + 197.00000000000003, + 580.0, + 745.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 140, + "image_id": 110, + "category_id": 1, + "segmentation": [ + [ + 291.0, + 113.99999999999996, + 778.0, + 113.99999999999996, + 778.0, + 745.9999999999999, + 291.0, + 745.9999999999999 + ] + ], + "area": 307783.99999999994, + "bbox": [ + 291.0, + 113.99999999999996, + 487.0, + 632.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 141, + "image_id": 111, + "category_id": 1, + "segmentation": [ + [ + 287.0, + 126.99999999999997, + 384.00000000000006, + 126.99999999999997, + 384.00000000000006, + 239.0, + 287.0, + 239.0 + ] + ], + "area": 10864.00000000001, + "bbox": [ + 287.0, + 126.99999999999997, + 97.00000000000001, + 112.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 142, + "image_id": 112, + "category_id": 1, + "segmentation": [ + [ + 306.0, + 97.00000000000001, + 732.0, + 97.00000000000001, + 732.0, + 669.0, + 306.0, + 669.0 + ] + ], + "area": 243672.0, + "bbox": [ + 306.0, + 97.00000000000001, + 426.0, + 572.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 143, + "image_id": 113, + "category_id": 1, + "segmentation": [ + [ + 388.0, + 203.0, + 524.0, + 203.0, + 524.0, + 367.0, + 388.0, + 367.0 + ] + ], + "area": 22304.0, + "bbox": [ + 388.0, + 203.0, + 136.0, + 164.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 144, + "image_id": 113, + "category_id": 1, + "segmentation": [ + [ + 793.0, + 211.00000000000003, + 928.0, + 211.00000000000003, + 928.0, + 382.0, + 793.0, + 382.0 + ] + ], + "area": 23084.999999999996, + "bbox": [ + 793.0, + 211.00000000000003, + 135.0, + 171.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 145, + "image_id": 114, + "category_id": 1, + "segmentation": [ + [ + 409.0, + 17.99999999999999, + 592.0, + 17.99999999999999, + 592.0, + 235.0, + 409.0, + 235.0 + ] + ], + "area": 39711.0, + "bbox": [ + 409.0, + 17.99999999999999, + 183.0, + 217.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 146, + "image_id": 115, + "category_id": 1, + "segmentation": [ + [ + 127.0, + 94.00000000000001, + 274.0, + 94.00000000000001, + 274.0, + 275.0, + 127.0, + 275.0 + ] + ], + "area": 26607.0, + "bbox": [ + 127.0, + 94.00000000000001, + 147.0, + 181.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 147, + "image_id": 116, + "category_id": 1, + "segmentation": [ + [ + 304.0, + 140.0, + 398.00000000000006, + 140.0, + 398.00000000000006, + 247.00000000000003, + 304.0, + 247.00000000000003 + ] + ], + "area": 10058.00000000001, + "bbox": [ + 304.0, + 140.0, + 94.0, + 107.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 148, + "image_id": 117, + "category_id": 1, + "segmentation": [ + [ + 197.0, + 58.99999999999999, + 317.0, + 58.99999999999999, + 317.0, + 226.0, + 197.0, + 226.0 + ] + ], + "area": 20040.0, + "bbox": [ + 197.0, + 58.99999999999999, + 120.0, + 167.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 149, + "image_id": 117, + "category_id": 1, + "segmentation": [ + [ + 310.0, + 150.0, + 419.0, + 150.0, + 419.0, + 297.0, + 310.0, + 297.0 + ] + ], + "area": 16023.0, + "bbox": [ + 310.0, + 150.0, + 109.0, + 147.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 150, + "image_id": 117, + "category_id": 1, + "segmentation": [ + [ + 449.0, + 111.99999999999997, + 523.0, + 111.99999999999997, + 523.0, + 256.0, + 449.0, + 256.0 + ] + ], + "area": 10656.000000000002, + "bbox": [ + 449.0, + 111.99999999999997, + 74.0, + 144.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 151, + "image_id": 117, + "category_id": 1, + "segmentation": [ + [ + 530.0, + 179.00000000000003, + 608.0, + 179.00000000000003, + 608.0, + 296.0, + 530.0, + 296.0 + ] + ], + "area": 9125.999999999998, + "bbox": [ + 530.0, + 179.00000000000003, + 78.0, + 117.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 152, + "image_id": 117, + "category_id": 1, + "segmentation": [ + [ + 625.0, + 133.99999999999997, + 711.0, + 133.99999999999997, + 711.0, + 269.99999999999994, + 625.0, + 269.99999999999994 + ] + ], + "area": 11695.999999999998, + "bbox": [ + 625.0, + 133.99999999999997, + 86.0, + 136.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 153, + "image_id": 118, + "category_id": 1, + "segmentation": [ + [ + 336.0, + 15.0, + 718.0, + 15.0, + 718.0, + 514.0, + 336.0, + 514.0 + ] + ], + "area": 190618.0, + "bbox": [ + 336.0, + 15.0, + 382.0, + 499.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 154, + "image_id": 119, + "category_id": 1, + "segmentation": [ + [ + 273.0, + 107.99999999999999, + 747.0, + 107.99999999999999, + 747.0, + 789.0, + 273.0, + 789.0 + ] + ], + "area": 322794.0, + "bbox": [ + 273.0, + 107.99999999999999, + 474.0, + 681.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 155, + "image_id": 120, + "category_id": 1, + "segmentation": [ + [ + 79.0, + 54.99999999999999, + 146.00000000000003, + 54.99999999999999, + 146.00000000000003, + 135.0, + 79.0, + 135.0 + ] + ], + "area": 5360.000000000002, + "bbox": [ + 79.0, + 54.99999999999999, + 67.0, + 80.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 156, + "image_id": 120, + "category_id": 1, + "segmentation": [ + [ + 283.00000000000006, + 42.0, + 345.0, + 42.0, + 345.0, + 120.0, + 283.00000000000006, + 120.0 + ] + ], + "area": 4835.999999999995, + "bbox": [ + 283.00000000000006, + 42.0, + 62.0, + 78.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 157, + "image_id": 121, + "category_id": 1, + "segmentation": [ + [ + 245.0, + 122.0, + 387.0, + 122.0, + 387.0, + 283.0, + 245.0, + 283.0 + ] + ], + "area": 22862.0, + "bbox": [ + 245.0, + 122.0, + 142.0, + 161.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 158, + "image_id": 122, + "category_id": 1, + "segmentation": [ + [ + 360.0, + 92.0, + 602.0, + 92.0, + 602.0, + 425.0, + 360.0, + 425.0 + ] + ], + "area": 80586.0, + "bbox": [ + 360.0, + 92.0, + 242.0, + 333.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 159, + "image_id": 123, + "category_id": 1, + "segmentation": [ + [ + 485.0, + 265.0, + 529.0, + 265.0, + 529.0, + 311.0, + 485.0, + 311.0 + ] + ], + "area": 2024.0, + "bbox": [ + 485.0, + 265.0, + 44.0, + 46.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 160, + "image_id": 123, + "category_id": 1, + "segmentation": [ + [ + 625.0, + 256.0, + 676.0, + 256.0, + 676.0, + 304.0, + 625.0, + 304.0 + ] + ], + "area": 2448.0, + "bbox": [ + 625.0, + 256.0, + 51.0, + 48.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 161, + "image_id": 123, + "category_id": 1, + "segmentation": [ + [ + 742.0, + 260.0, + 780.0, + 260.0, + 780.0, + 307.0, + 742.0, + 307.0 + ] + ], + "area": 1786.0, + "bbox": [ + 742.0, + 260.0, + 38.0, + 47.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 162, + "image_id": 124, + "category_id": 1, + "segmentation": [ + [ + 220.0, + 76.99999999999997, + 569.0, + 76.99999999999997, + 569.0, + 569.0, + 220.0, + 569.0 + ] + ], + "area": 171708.0, + "bbox": [ + 220.0, + 76.99999999999997, + 349.0, + 492.00000000000006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 163, + "image_id": 125, + "category_id": 1, + "segmentation": [ + [ + 78.0, + 8.000000000000014, + 748.0, + 8.000000000000014, + 748.0, + 730.0, + 78.0, + 730.0 + ] + ], + "area": 483740.0, + "bbox": [ + 78.0, + 8.000000000000014, + 670.0, + 722.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 164, + "image_id": 126, + "category_id": 1, + "segmentation": [ + [ + 299.0, + 104.00000000000003, + 425.0, + 104.00000000000003, + 425.0, + 290.00000000000006, + 299.0, + 290.00000000000006 + ] + ], + "area": 23436.000000000004, + "bbox": [ + 299.0, + 104.00000000000003, + 126.0, + 186.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 165, + "image_id": 126, + "category_id": 1, + "segmentation": [ + [ + 477.0, + 32.000000000000014, + 617.0, + 32.000000000000014, + 617.0, + 209.0, + 477.0, + 209.0 + ] + ], + "area": 24780.0, + "bbox": [ + 477.0, + 32.000000000000014, + 140.0, + 177.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 166, + "image_id": 127, + "category_id": 1, + "segmentation": [ + [ + 120.0, + 31.000000000000007, + 251.0, + 31.000000000000007, + 251.0, + 172.0, + 120.0, + 172.0 + ] + ], + "area": 18471.0, + "bbox": [ + 120.0, + 31.000000000000007, + 131.0, + 141.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 167, + "image_id": 127, + "category_id": 1, + "segmentation": [ + [ + 362.0, + 173.0, + 463.0, + 173.0, + 463.0, + 308.0, + 362.0, + 308.0 + ] + ], + "area": 13635.0, + "bbox": [ + 362.0, + 173.0, + 101.0, + 135.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 168, + "image_id": 127, + "category_id": 1, + "segmentation": [ + [ + 531.0, + 172.00000000000003, + 649.0, + 172.00000000000003, + 649.0, + 300.0, + 531.0, + 300.0 + ] + ], + "area": 15103.999999999996, + "bbox": [ + 531.0, + 172.00000000000003, + 118.0, + 128.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 169, + "image_id": 127, + "category_id": 1, + "segmentation": [ + [ + 792.0, + 112.0, + 911.0, + 112.0, + 911.0, + 252.99999999999997, + 792.0, + 252.99999999999997 + ] + ], + "area": 16778.999999999996, + "bbox": [ + 792.0, + 112.0, + 119.0, + 141.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 170, + "image_id": 128, + "category_id": 1, + "segmentation": [ + [ + 65.0, + 69.99999999999999, + 158.0, + 69.99999999999999, + 158.0, + 179.0, + 65.0, + 179.0 + ] + ], + "area": 10137.000000000002, + "bbox": [ + 65.0, + 69.99999999999999, + 93.0, + 109.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 171, + "image_id": 128, + "category_id": 1, + "segmentation": [ + [ + 225.0, + 128.99999999999997, + 299.0, + 128.99999999999997, + 299.0, + 215.99999999999997, + 225.0, + 215.99999999999997 + ] + ], + "area": 6438.0, + "bbox": [ + 225.0, + 128.99999999999997, + 74.0, + 87.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 172, + "image_id": 128, + "category_id": 1, + "segmentation": [ + [ + 336.0, + 146.0, + 426.0, + 146.0, + 426.0, + 250.99999999999997, + 336.0, + 250.99999999999997 + ] + ], + "area": 9449.999999999998, + "bbox": [ + 336.0, + 146.0, + 90.0, + 105.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 173, + "image_id": 128, + "category_id": 1, + "segmentation": [ + [ + 453.0, + 81.0, + 525.0, + 81.0, + 525.0, + 174.0, + 453.0, + 174.0 + ] + ], + "area": 6696.0, + "bbox": [ + 453.0, + 81.0, + 72.0, + 92.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 174, + "image_id": 128, + "category_id": 1, + "segmentation": [ + [ + 538.0, + 136.0, + 626.0, + 136.0, + 626.0, + 249.99999999999997, + 538.0, + 249.99999999999997 + ] + ], + "area": 10031.999999999998, + "bbox": [ + 538.0, + 136.0, + 88.0, + 114.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 175, + "image_id": 128, + "category_id": 1, + "segmentation": [ + [ + 684.0, + 131.99999999999997, + 773.0, + 131.99999999999997, + 773.0, + 239.99999999999997, + 684.0, + 239.99999999999997 + ] + ], + "area": 9612.0, + "bbox": [ + 684.0, + 131.99999999999997, + 89.0, + 107.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 176, + "image_id": 128, + "category_id": 1, + "segmentation": [ + [ + 847.0, + 104.0, + 938.0, + 104.0, + 938.0, + 224.0, + 847.0, + 224.0 + ] + ], + "area": 10920.0, + "bbox": [ + 847.0, + 104.0, + 91.0, + 119.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 177, + "image_id": 129, + "category_id": 1, + "segmentation": [ + [ + 320.0, + 123.0, + 453.0, + 123.0, + 453.0, + 316.0, + 320.0, + 316.0 + ] + ], + "area": 25669.0, + "bbox": [ + 320.0, + 123.0, + 133.0, + 193.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 178, + "image_id": 129, + "category_id": 1, + "segmentation": [ + [ + 554.0, + 43.0, + 718.0, + 43.0, + 718.0, + 239.0, + 554.0, + 239.0 + ] + ], + "area": 32144.0, + "bbox": [ + 554.0, + 43.0, + 164.0, + 196.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 179, + "image_id": 130, + "category_id": 1, + "segmentation": [ + [ + 247.00000000000003, + 197.0, + 347.0, + 197.0, + 347.0, + 312.00000000000006, + 247.00000000000003, + 312.00000000000006 + ] + ], + "area": 11500.000000000002, + "bbox": [ + 247.00000000000003, + 197.0, + 100.0, + 115.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 180, + "image_id": 130, + "category_id": 1, + "segmentation": [ + [ + 535.0, + 187.00000000000003, + 643.0, + 187.00000000000003, + 643.0, + 324.0, + 535.0, + 324.0 + ] + ], + "area": 14795.999999999996, + "bbox": [ + 535.0, + 187.00000000000003, + 108.0, + 137.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 181, + "image_id": 130, + "category_id": 1, + "segmentation": [ + [ + 755.0, + 56.99999999999999, + 905.0, + 56.99999999999999, + 905.0, + 275.0, + 755.0, + 275.0 + ] + ], + "area": 32700.0, + "bbox": [ + 755.0, + 56.99999999999999, + 150.0, + 218.00000000000003 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 182, + "image_id": 131, + "category_id": 1, + "segmentation": [ + [ + 287.0, + 152.0, + 407.0, + 152.0, + 407.0, + 287.0, + 287.0, + 287.0 + ] + ], + "area": 16200.0, + "bbox": [ + 287.0, + 152.0, + 120.0, + 135.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 183, + "image_id": 132, + "category_id": 1, + "segmentation": [ + [ + 395.00000000000006, + 140.00000000000003, + 527.0, + 140.00000000000003, + 527.0, + 326.0, + 395.00000000000006, + 326.0 + ] + ], + "area": 24551.999999999985, + "bbox": [ + 395.00000000000006, + 140.00000000000003, + 132.0, + 186.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 184, + "image_id": 133, + "category_id": 1, + "segmentation": [ + [ + 335.0, + 93.0, + 455.0, + 93.0, + 455.0, + 222.0, + 335.0, + 222.0 + ] + ], + "area": 15480.0, + "bbox": [ + 335.0, + 93.0, + 120.0, + 129.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 185, + "image_id": 134, + "category_id": 1, + "segmentation": [ + [ + 234.0, + 82.00000000000001, + 387.0, + 82.00000000000001, + 387.0, + 259.0, + 234.0, + 259.0 + ] + ], + "area": 27081.0, + "bbox": [ + 234.0, + 82.00000000000001, + 153.0, + 177.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 186, + "image_id": 134, + "category_id": 1, + "segmentation": [ + [ + 566.0, + 75.0, + 708.0, + 75.0, + 708.0, + 247.0, + 566.0, + 247.0 + ] + ], + "area": 24424.0, + "bbox": [ + 566.0, + 75.0, + 142.0, + 172.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 187, + "image_id": 134, + "category_id": 1, + "segmentation": [ + [ + 830.0, + 96.00000000000001, + 905.0, + 96.00000000000001, + 905.0, + 176.00000000000003, + 830.0, + 176.00000000000003 + ] + ], + "area": 6000.000000000001, + "bbox": [ + 830.0, + 96.00000000000001, + 75.0, + 80.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 188, + "image_id": 134, + "category_id": 1, + "segmentation": [ + [ + 75.0, + 133.0, + 143.0, + 133.0, + 143.0, + 190.99999999999997, + 75.0, + 190.99999999999997 + ] + ], + "area": 3943.999999999998, + "bbox": [ + 75.0, + 133.0, + 68.0, + 58.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 189, + "image_id": 135, + "category_id": 1, + "segmentation": [ + [ + 352.0, + 90.00000000000003, + 613.0, + 90.00000000000003, + 613.0, + 426.0, + 352.0, + 426.0 + ] + ], + "area": 87696.0, + "bbox": [ + 352.0, + 90.00000000000003, + 261.0, + 336.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 190, + "image_id": 136, + "category_id": 1, + "segmentation": [ + [ + 268.0, + 192.0, + 370.0, + 192.0, + 370.0, + 305.0, + 268.0, + 305.0 + ] + ], + "area": 11526.0, + "bbox": [ + 268.0, + 192.0, + 102.00000000000001, + 113.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 191, + "image_id": 137, + "category_id": 1, + "segmentation": [ + [ + 231.0, + 74.00000000000001, + 314.0, + 74.00000000000001, + 314.0, + 177.00000000000003, + 231.0, + 177.00000000000003 + ] + ], + "area": 8549.000000000002, + "bbox": [ + 231.0, + 74.00000000000001, + 83.0, + 103.00000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 192, + "image_id": 138, + "category_id": 1, + "segmentation": [ + [ + 385.0, + 58.999999999999986, + 624.0, + 58.999999999999986, + 624.0, + 398.0, + 385.0, + 398.0 + ] + ], + "area": 81021.0, + "bbox": [ + 385.0, + 58.999999999999986, + 239.0, + 339.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 193, + "image_id": 139, + "category_id": 1, + "segmentation": [ + [ + 309.0, + 3.999999999999998, + 361.00000000000006, + 3.999999999999998, + 361.00000000000006, + 55.99999999999999, + 309.0, + 55.99999999999999 + ] + ], + "area": 2704.0000000000027, + "bbox": [ + 309.0, + 3.999999999999998, + 52.00000000000001, + 52.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 194, + "image_id": 140, + "category_id": 1, + "segmentation": [ + [ + 173.0, + 117.0, + 623.0, + 117.0, + 623.0, + 682.0, + 173.0, + 682.0 + ] + ], + "area": 254250.0, + "bbox": [ + 173.0, + 117.0, + 450.0, + 565.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 195, + "image_id": 141, + "category_id": 1, + "segmentation": [ + [ + 283.0, + 107.99999999999999, + 726.0, + 107.99999999999999, + 726.0, + 690.9999999999999, + 283.0, + 690.9999999999999 + ] + ], + "area": 258268.99999999994, + "bbox": [ + 283.0, + 107.99999999999999, + 443.0, + 583.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 196, + "image_id": 142, + "category_id": 1, + "segmentation": [ + [ + 305.0, + 134.0, + 412.0, + 134.0, + 412.0, + 257.0, + 305.0, + 257.0 + ] + ], + "area": 13161.0, + "bbox": [ + 305.0, + 134.0, + 107.00000000000001, + 122.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 197, + "image_id": 143, + "category_id": 1, + "segmentation": [ + [ + 185.0, + 84.99999999999999, + 401.0, + 84.99999999999999, + 401.0, + 395.0, + 185.0, + 395.0 + ] + ], + "area": 66960.0, + "bbox": [ + 185.0, + 84.99999999999999, + 216.0, + 310.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 198, + "image_id": 144, + "category_id": 1, + "segmentation": [ + [ + 300.0, + 121.0, + 427.0, + 121.0, + 427.0, + 262.0, + 300.0, + 262.0 + ] + ], + "area": 17907.0, + "bbox": [ + 300.0, + 121.0, + 127.00000000000001, + 141.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 199, + "image_id": 145, + "category_id": 1, + "segmentation": [ + [ + 175.0, + 122.99999999999997, + 847.0, + 122.99999999999997, + 847.0, + 913.9999999999999, + 175.0, + 913.9999999999999 + ] + ], + "area": 531551.9999999999, + "bbox": [ + 175.0, + 122.99999999999997, + 672.0, + 791.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 200, + "image_id": 146, + "category_id": 1, + "segmentation": [ + [ + 94.0, + 145.00000000000003, + 175.0, + 145.00000000000003, + 175.0, + 228.00000000000006, + 94.0, + 228.00000000000006 + ] + ], + "area": 6723.000000000003, + "bbox": [ + 94.0, + 145.00000000000003, + 81.0, + 83.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 201, + "image_id": 146, + "category_id": 1, + "segmentation": [ + [ + 243.0, + 174.00000000000003, + 314.0, + 174.00000000000003, + 314.0, + 264.0, + 243.0, + 264.0 + ] + ], + "area": 6389.999999999998, + "bbox": [ + 243.0, + 174.00000000000003, + 71.0, + 90.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 202, + "image_id": 146, + "category_id": 1, + "segmentation": [ + [ + 385.0, + 206.0, + 454.0, + 206.0, + 454.0, + 284.0, + 385.0, + 284.0 + ] + ], + "area": 5382.0, + "bbox": [ + 385.0, + 206.0, + 69.0, + 78.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 203, + "image_id": 146, + "category_id": 1, + "segmentation": [ + [ + 515.0, + 160.0, + 599.0, + 160.0, + 599.0, + 245.0, + 515.0, + 245.0 + ] + ], + "area": 7140.0, + "bbox": [ + 515.0, + 160.0, + 84.0, + 85.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 204, + "image_id": 146, + "category_id": 1, + "segmentation": [ + [ + 672.0, + 108.0, + 748.0, + 108.0, + 748.0, + 196.0, + 672.0, + 196.0 + ] + ], + "area": 6688.0, + "bbox": [ + 672.0, + 108.0, + 76.0, + 88.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 205, + "image_id": 146, + "category_id": 1, + "segmentation": [ + [ + 829.0, + 89.0, + 900.0, + 89.0, + 900.0, + 172.00000000000003, + 829.0, + 172.00000000000003 + ] + ], + "area": 5893.000000000002, + "bbox": [ + 829.0, + 89.0, + 71.0, + 83.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 206, + "image_id": 147, + "category_id": 1, + "segmentation": [ + [ + 109.00000000000001, + 39.999999999999986, + 214.0, + 39.999999999999986, + 214.0, + 170.0, + 109.00000000000001, + 170.0 + ] + ], + "area": 13649.999999999998, + "bbox": [ + 109.00000000000001, + 39.999999999999986, + 105.0, + 130.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 207, + "image_id": 147, + "category_id": 1, + "segmentation": [ + [ + 208.0, + 146.99999999999997, + 281.0, + 146.99999999999997, + 281.0, + 236.0, + 208.0, + 236.0 + ] + ], + "area": 6497.000000000002, + "bbox": [ + 208.0, + 146.99999999999997, + 73.0, + 88.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 208, + "image_id": 147, + "category_id": 1, + "segmentation": [ + [ + 352.00000000000006, + 110.0, + 463.0, + 110.0, + 463.0, + 215.99999999999997, + 352.00000000000006, + 215.99999999999997 + ] + ], + "area": 11765.99999999999, + "bbox": [ + 352.00000000000006, + 110.0, + 111.0, + 106.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 209, + "image_id": 148, + "category_id": 1, + "segmentation": [ + [ + 250.0, + 150.0, + 646.0, + 150.0, + 646.0, + 638.0, + 250.0, + 638.0 + ] + ], + "area": 193248.0, + "bbox": [ + 250.0, + 150.0, + 396.0, + 488.00000000000006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 210, + "image_id": 149, + "category_id": 1, + "segmentation": [ + [ + 244.0, + 153.0, + 351.0, + 153.0, + 351.0, + 262.0, + 244.0, + 262.0 + ] + ], + "area": 11663.0, + "bbox": [ + 244.0, + 153.0, + 107.0, + 108.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 211, + "image_id": 149, + "category_id": 1, + "segmentation": [ + [ + 417.0, + 132.99999999999997, + 526.0, + 132.99999999999997, + 526.0, + 267.0, + 417.0, + 267.0 + ] + ], + "area": 14606.000000000004, + "bbox": [ + 417.0, + 132.99999999999997, + 109.0, + 134.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 212, + "image_id": 149, + "category_id": 1, + "segmentation": [ + [ + 593.0, + 19.999999999999996, + 678.0, + 19.999999999999996, + 678.0, + 125.99999999999997, + 593.0, + 125.99999999999997 + ] + ], + "area": 9009.999999999998, + "bbox": [ + 593.0, + 19.999999999999996, + 85.0, + 106.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 213, + "image_id": 149, + "category_id": 1, + "segmentation": [ + [ + 706.0, + 147.99999999999997, + 806.0, + 147.99999999999997, + 806.0, + 272.99999999999994, + 706.0, + 272.99999999999994 + ] + ], + "area": 12499.999999999996, + "bbox": [ + 706.0, + 147.99999999999997, + 100.0, + 125.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 214, + "image_id": 150, + "category_id": 1, + "segmentation": [ + [ + 243.0, + 92.0, + 358.0, + 92.0, + 358.0, + 223.0, + 243.0, + 223.0 + ] + ], + "area": 15065.0, + "bbox": [ + 243.0, + 92.0, + 115.0, + 131.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 215, + "image_id": 151, + "category_id": 1, + "segmentation": [ + [ + 241.0, + 70.00000000000001, + 706.0, + 70.00000000000001, + 706.0, + 640.0, + 241.0, + 640.0 + ] + ], + "area": 265050.0, + "bbox": [ + 241.0, + 70.00000000000001, + 465.0, + 570.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 216, + "image_id": 152, + "category_id": 1, + "segmentation": [ + [ + 305.0, + 118.99999999999999, + 688.0, + 118.99999999999999, + 688.0, + 619.0, + 305.0, + 619.0 + ] + ], + "area": 191500.0, + "bbox": [ + 305.0, + 118.99999999999999, + 383.0, + 500.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 217, + "image_id": 153, + "category_id": 1, + "segmentation": [ + [ + 186.0, + 50.0, + 333.00000000000006, + 50.0, + 333.00000000000006, + 215.0, + 186.0, + 215.0 + ] + ], + "area": 24255.00000000001, + "bbox": [ + 186.0, + 50.0, + 147.0, + 165.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 218, + "image_id": 153, + "category_id": 1, + "segmentation": [ + [ + 758.9999999999999, + 11.0, + 960.0, + 11.0, + 960.0, + 223.0, + 758.9999999999999, + 223.0 + ] + ], + "area": 42612.00000000002, + "bbox": [ + 758.9999999999999, + 11.0, + 201.0, + 212.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 219, + "image_id": 154, + "category_id": 1, + "segmentation": [ + [ + 271.0, + 115.99999999999999, + 382.0, + 115.99999999999999, + 382.0, + 236.0, + 271.0, + 236.0 + ] + ], + "area": 13320.000000000002, + "bbox": [ + 271.0, + 115.99999999999999, + 111.00000000000001, + 120.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 220, + "image_id": 155, + "category_id": 1, + "segmentation": [ + [ + 209.0, + 48.000000000000014, + 784.0, + 48.000000000000014, + 784.0, + 828.0000000000001, + 209.0, + 828.0000000000001 + ] + ], + "area": 448500.00000000006, + "bbox": [ + 209.0, + 48.000000000000014, + 575.0, + 780.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 221, + "image_id": 156, + "category_id": 1, + "segmentation": [ + [ + 383.0, + 71.00000000000001, + 636.0, + 71.00000000000001, + 636.0, + 368.99999999999994, + 383.0, + 368.99999999999994 + ] + ], + "area": 75393.99999999999, + "bbox": [ + 383.0, + 71.00000000000001, + 253.0, + 297.99999999999994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 222, + "image_id": 157, + "category_id": 1, + "segmentation": [ + [ + 299.0, + 122.0, + 430.0, + 122.0, + 430.0, + 266.0, + 299.0, + 266.0 + ] + ], + "area": 18864.0, + "bbox": [ + 299.0, + 122.0, + 131.0, + 144.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 223, + "image_id": 158, + "category_id": 1, + "segmentation": [ + [ + 311.0, + 152.0, + 436.0, + 152.0, + 436.0, + 292.0, + 311.0, + 292.0 + ] + ], + "area": 17500.0, + "bbox": [ + 311.0, + 152.0, + 125.0, + 140.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 224, + "image_id": 159, + "category_id": 1, + "segmentation": [ + [ + 411.0, + 174.0, + 498.0, + 174.0, + 498.0, + 304.0, + 411.0, + 304.0 + ] + ], + "area": 11310.0, + "bbox": [ + 411.0, + 174.0, + 87.0, + 130.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 225, + "image_id": 159, + "category_id": 1, + "segmentation": [ + [ + 524.0, + 56.99999999999999, + 650.0, + 56.99999999999999, + 650.0, + 196.99999999999997, + 524.0, + 196.99999999999997 + ] + ], + "area": 17639.999999999996, + "bbox": [ + 524.0, + 56.99999999999999, + 126.0, + 140.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 226, + "image_id": 160, + "category_id": 1, + "segmentation": [ + [ + 353.0, + 93.0, + 566.0, + 93.0, + 566.0, + 389.99999999999994, + 353.0, + 389.99999999999994 + ] + ], + "area": 63260.999999999985, + "bbox": [ + 353.0, + 93.0, + 213.0, + 297.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 227, + "image_id": 161, + "category_id": 1, + "segmentation": [ + [ + 301.0, + 143.0, + 428.00000000000006, + 143.0, + 428.00000000000006, + 309.0, + 301.0, + 309.0 + ] + ], + "area": 21082.00000000001, + "bbox": [ + 301.0, + 143.0, + 127.00000000000001, + 166.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 228, + "image_id": 162, + "category_id": 1, + "segmentation": [ + [ + 119.0, + 12.999999999999986, + 508.0, + 12.999999999999986, + 508.0, + 550.0, + 119.0, + 550.0 + ] + ], + "area": 208893.0, + "bbox": [ + 119.0, + 12.999999999999986, + 389.0, + 537.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 229, + "image_id": 163, + "category_id": 1, + "segmentation": [ + [ + 279.00000000000006, + 175.00000000000003, + 397.0, + 175.00000000000003, + 397.0, + 312.0, + 279.00000000000006, + 312.0 + ] + ], + "area": 16165.999999999989, + "bbox": [ + 279.00000000000006, + 175.00000000000003, + 118.0, + 137.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 230, + "image_id": 164, + "category_id": 1, + "segmentation": [ + [ + 214.00000000000003, + 132.0, + 345.0, + 132.0, + 345.0, + 288.0, + 214.00000000000003, + 288.0 + ] + ], + "area": 20435.999999999996, + "bbox": [ + 214.00000000000003, + 132.0, + 131.0, + 156.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 231, + "image_id": 165, + "category_id": 1, + "segmentation": [ + [ + 130.0, + 3.0000000000000027, + 259.0, + 3.0000000000000027, + 259.0, + 131.0, + 130.0, + 131.0 + ] + ], + "area": 16512.0, + "bbox": [ + 130.0, + 3.0000000000000027, + 129.0, + 128.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 232, + "image_id": 165, + "category_id": 1, + "segmentation": [ + [ + 252.0, + 85.0, + 348.0, + 85.0, + 348.0, + 189.0, + 252.0, + 189.0 + ] + ], + "area": 9984.0, + "bbox": [ + 252.0, + 85.0, + 96.0, + 104.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 233, + "image_id": 166, + "category_id": 1, + "segmentation": [ + [ + 297.0, + 142.00000000000003, + 334.0, + 142.00000000000003, + 334.0, + 191.0, + 297.0, + 191.0 + ] + ], + "area": 1812.9999999999989, + "bbox": [ + 297.0, + 142.00000000000003, + 37.0, + 48.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 234, + "image_id": 166, + "category_id": 1, + "segmentation": [ + [ + 238.00000000000003, + 164.0, + 277.0, + 164.0, + 277.0, + 206.0, + 238.00000000000003, + 206.0 + ] + ], + "area": 1637.9999999999989, + "bbox": [ + 238.00000000000003, + 164.0, + 39.0, + 42.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 235, + "image_id": 166, + "category_id": 1, + "segmentation": [ + [ + 177.00000000000003, + 145.0, + 216.0, + 145.0, + 216.0, + 191.0, + 177.00000000000003, + 191.0 + ] + ], + "area": 1793.9999999999986, + "bbox": [ + 177.00000000000003, + 145.0, + 39.0, + 46.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 236, + "image_id": 166, + "category_id": 1, + "segmentation": [ + [ + 103.00000000000001, + 174.0, + 147.0, + 174.0, + 147.0, + 217.0, + 103.00000000000001, + 217.0 + ] + ], + "area": 1891.9999999999993, + "bbox": [ + 103.00000000000001, + 174.0, + 44.0, + 43.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 237, + "image_id": 167, + "category_id": 1, + "segmentation": [ + [ + 502.0, + 101.99999999999999, + 725.0, + 101.99999999999999, + 725.0, + 344.0, + 502.0, + 344.0 + ] + ], + "area": 53966.0, + "bbox": [ + 502.0, + 101.99999999999999, + 223.0, + 242.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 238, + "image_id": 168, + "category_id": 1, + "segmentation": [ + [ + 383.0, + 213.99999999999994, + 650.0, + 213.99999999999994, + 650.0, + 619.0, + 383.0, + 619.0 + ] + ], + "area": 108135.00000000001, + "bbox": [ + 383.0, + 213.99999999999994, + 267.0, + 405.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 239, + "image_id": 169, + "category_id": 1, + "segmentation": [ + [ + 301.00000000000006, + 143.0, + 395.00000000000006, + 143.0, + 395.00000000000006, + 263.0, + 301.00000000000006, + 263.0 + ] + ], + "area": 11280.0, + "bbox": [ + 301.00000000000006, + 143.0, + 94.0, + 120.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 240, + "image_id": 170, + "category_id": 1, + "segmentation": [ + [ + 284.00000000000006, + 83.00000000000001, + 427.0, + 83.00000000000001, + 427.0, + 227.0, + 284.00000000000006, + 227.0 + ] + ], + "area": 20591.999999999993, + "bbox": [ + 284.00000000000006, + 83.00000000000001, + 143.0, + 144.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 241, + "image_id": 171, + "category_id": 1, + "segmentation": [ + [ + 337.0, + 151.00000000000003, + 434.0, + 151.00000000000003, + 434.0, + 281.0, + 337.0, + 281.0 + ] + ], + "area": 12609.999999999996, + "bbox": [ + 337.0, + 151.00000000000003, + 97.0, + 130.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 242, + "image_id": 171, + "category_id": 1, + "segmentation": [ + [ + 632.0, + 143.0, + 743.0000000000001, + 143.0, + 743.0000000000001, + 283.00000000000006, + 632.0, + 283.00000000000006 + ] + ], + "area": 15540.000000000022, + "bbox": [ + 632.0, + 143.0, + 110.99999999999999, + 140.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 243, + "image_id": 172, + "category_id": 1, + "segmentation": [ + [ + 247.00000000000003, + 171.99999999999997, + 386.0, + 171.99999999999997, + 386.0, + 300.0, + 247.00000000000003, + 300.0 + ] + ], + "area": 17792.0, + "bbox": [ + 247.00000000000003, + 171.99999999999997, + 139.0, + 128.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 244, + "image_id": 173, + "category_id": 1, + "segmentation": [ + [ + 250.0, + 110.0, + 737.0, + 110.0, + 737.0, + 682.0, + 250.0, + 682.0 + ] + ], + "area": 278564.0, + "bbox": [ + 250.0, + 110.0, + 487.0, + 572.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 245, + "image_id": 174, + "category_id": 1, + "segmentation": [ + [ + 230.0, + 129.0, + 325.0, + 129.0, + 325.0, + 233.0, + 230.0, + 233.0 + ] + ], + "area": 9880.0, + "bbox": [ + 230.0, + 129.0, + 95.0, + 104.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 246, + "image_id": 174, + "category_id": 1, + "segmentation": [ + [ + 388.0, + 188.0, + 435.0, + 188.0, + 435.0, + 244.00000000000003, + 388.0, + 244.00000000000003 + ] + ], + "area": 2632.0000000000014, + "bbox": [ + 388.0, + 188.0, + 47.0, + 56.00000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 247, + "image_id": 174, + "category_id": 1, + "segmentation": [ + [ + 692.9999999999999, + 106.00000000000001, + 760.0, + 106.00000000000001, + 760.0, + 173.00000000000003, + 692.9999999999999, + 173.00000000000003 + ] + ], + "area": 4489.000000000008, + "bbox": [ + 692.9999999999999, + 106.00000000000001, + 67.0, + 67.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 248, + "image_id": 175, + "category_id": 1, + "segmentation": [ + [ + 491.0, + 38.00000000000002, + 815.0, + 38.00000000000002, + 815.0, + 424.0, + 491.0, + 424.0 + ] + ], + "area": 125064.0, + "bbox": [ + 491.0, + 38.00000000000002, + 324.0, + 386.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 249, + "image_id": 176, + "category_id": 1, + "segmentation": [ + [ + 422.0, + 83.0, + 691.0, + 83.0, + 691.0, + 405.99999999999994, + 422.0, + 405.99999999999994 + ] + ], + "area": 86886.99999999999, + "bbox": [ + 422.0, + 83.0, + 269.0, + 323.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 250, + "image_id": 177, + "category_id": 1, + "segmentation": [ + [ + 276.0, + 92.99999999999999, + 797.0, + 92.99999999999999, + 797.0, + 865.9999999999999, + 276.0, + 865.9999999999999 + ] + ], + "area": 402732.99999999994, + "bbox": [ + 276.0, + 92.99999999999999, + 521.0, + 772.9999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 251, + "image_id": 178, + "category_id": 1, + "segmentation": [ + [ + 307.0, + 114.0, + 433.0, + 114.0, + 433.0, + 245.99999999999997, + 307.0, + 245.99999999999997 + ] + ], + "area": 16631.999999999996, + "bbox": [ + 307.0, + 114.0, + 126.00000000000001, + 132.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 252, + "image_id": 179, + "category_id": 1, + "segmentation": [ + [ + 203.0, + 226.0, + 693.0, + 226.0, + 693.0, + 941.0, + 203.0, + 941.0 + ] + ], + "area": 350350.0, + "bbox": [ + 203.0, + 226.0, + 490.0, + 715.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 253, + "image_id": 180, + "category_id": 1, + "segmentation": [ + [ + 270.0, + 94.00000000000001, + 392.0, + 94.00000000000001, + 392.0, + 233.0, + 270.0, + 233.0 + ] + ], + "area": 16958.0, + "bbox": [ + 270.0, + 94.00000000000001, + 122.00000000000001, + 139.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 254, + "image_id": 181, + "category_id": 1, + "segmentation": [ + [ + 263.0, + 138.0, + 385.0, + 138.0, + 385.0, + 280.0, + 263.0, + 280.0 + ] + ], + "area": 17324.0, + "bbox": [ + 263.0, + 138.0, + 122.00000000000001, + 142.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 255, + "image_id": 182, + "category_id": 1, + "segmentation": [ + [ + 324.0, + 84.00000000000001, + 439.0, + 84.00000000000001, + 439.0, + 242.0, + 324.0, + 242.0 + ] + ], + "area": 18170.0, + "bbox": [ + 324.0, + 84.00000000000001, + 115.0, + 158.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 256, + "image_id": 183, + "category_id": 1, + "segmentation": [ + [ + 392.0, + 60.000000000000014, + 739.0, + 60.000000000000014, + 739.0, + 484.0, + 392.0, + 484.0 + ] + ], + "area": 147128.0, + "bbox": [ + 392.0, + 60.000000000000014, + 347.0, + 424.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 257, + "image_id": 184, + "category_id": 1, + "segmentation": [ + [ + 52.00000000000001, + 74.00000000000001, + 191.0, + 74.00000000000001, + 191.0, + 265.0, + 52.00000000000001, + 265.0 + ] + ], + "area": 26549.0, + "bbox": [ + 52.00000000000001, + 74.00000000000001, + 139.0, + 191.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 258, + "image_id": 185, + "category_id": 1, + "segmentation": [ + [ + 255.0, + 88.0, + 393.0, + 88.0, + 393.0, + 248.99999999999997, + 255.0, + 248.99999999999997 + ] + ], + "area": 22217.999999999996, + "bbox": [ + 255.0, + 88.0, + 138.0, + 161.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 259, + "image_id": 186, + "category_id": 1, + "segmentation": [ + [ + 422.0, + 532.0, + 666.0, + 532.0, + 666.0, + 791.0, + 422.0, + 791.0 + ] + ], + "area": 63196.0, + "bbox": [ + 422.0, + 532.0, + 244.0, + 259.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 260, + "image_id": 187, + "category_id": 1, + "segmentation": [ + [ + 342.0, + 117.00000000000003, + 424.0, + 117.00000000000003, + 424.0, + 218.0, + 342.0, + 218.0 + ] + ], + "area": 8281.999999999998, + "bbox": [ + 342.0, + 117.00000000000003, + 82.0, + 101.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 261, + "image_id": 188, + "category_id": 1, + "segmentation": [ + [ + 376.0, + 148.0, + 473.0, + 148.0, + 473.0, + 273.0, + 376.0, + 273.0 + ] + ], + "area": 12125.0, + "bbox": [ + 376.0, + 148.0, + 97.0, + 125.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 262, + "image_id": 188, + "category_id": 1, + "segmentation": [ + [ + 520.0000000000001, + 160.0, + 626.0, + 160.0, + 626.0, + 293.0, + 520.0000000000001, + 293.0 + ] + ], + "area": 14097.999999999985, + "bbox": [ + 520.0000000000001, + 160.0, + 106.0, + 133.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 263, + "image_id": 189, + "category_id": 1, + "segmentation": [ + [ + 177.00000000000003, + 79.0, + 238.00000000000003, + 79.0, + 238.00000000000003, + 155.0, + 177.00000000000003, + 155.0 + ] + ], + "area": 4636.0, + "bbox": [ + 177.00000000000003, + 79.0, + 61.0, + 76.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 264, + "image_id": 190, + "category_id": 1, + "segmentation": [ + [ + 303.0, + 83.00000000000001, + 621.0, + 83.00000000000001, + 621.0, + 471.99999999999994, + 303.0, + 471.99999999999994 + ] + ], + "area": 123701.99999999999, + "bbox": [ + 303.0, + 83.00000000000001, + 318.0, + 389.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 265, + "image_id": 191, + "category_id": 1, + "segmentation": [ + [ + 329.0, + 95.0, + 700.0, + 95.0, + 700.0, + 641.0, + 329.0, + 641.0 + ] + ], + "area": 202566.0, + "bbox": [ + 329.0, + 95.0, + 371.0, + 546.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 266, + "image_id": 192, + "category_id": 1, + "segmentation": [ + [ + 143.0, + 71.0, + 212.0, + 71.0, + 212.0, + 160.0, + 143.0, + 160.0 + ] + ], + "area": 6141.0, + "bbox": [ + 143.0, + 71.0, + 69.0, + 89.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 267, + "image_id": 192, + "category_id": 1, + "segmentation": [ + [ + 337.0, + 132.0, + 402.0, + 132.0, + 402.0, + 202.0, + 337.0, + 202.0 + ] + ], + "area": 4550.0, + "bbox": [ + 337.0, + 132.0, + 65.0, + 70.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 268, + "image_id": 192, + "category_id": 1, + "segmentation": [ + [ + 543.0, + 127.0, + 602.0, + 127.0, + 602.0, + 210.00000000000003, + 543.0, + 210.00000000000003 + ] + ], + "area": 4897.000000000002, + "bbox": [ + 543.0, + 127.0, + 59.0, + 83.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 269, + "image_id": 192, + "category_id": 1, + "segmentation": [ + [ + 721.0, + 99.0, + 790.0, + 99.0, + 790.0, + 185.0, + 721.0, + 185.0 + ] + ], + "area": 5934.0, + "bbox": [ + 721.0, + 99.0, + 69.0, + 86.00000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 270, + "image_id": 193, + "category_id": 1, + "segmentation": [ + [ + 302.0, + 43.99999999999999, + 483.0, + 43.99999999999999, + 483.0, + 285.0, + 302.0, + 285.0 + ] + ], + "area": 43621.0, + "bbox": [ + 302.0, + 43.99999999999999, + 181.0, + 241.00000000000003 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 271, + "image_id": 193, + "category_id": 1, + "segmentation": [ + [ + 541.0, + 245.0, + 725.0, + 245.0, + 725.0, + 483.00000000000006, + 541.0, + 483.00000000000006 + ] + ], + "area": 43792.00000000001, + "bbox": [ + 541.0, + 245.0, + 184.0, + 238.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 272, + "image_id": 194, + "category_id": 1, + "segmentation": [ + [ + 267.0, + 155.99999999999997, + 396.0, + 155.99999999999997, + 396.0, + 300.0, + 267.0, + 300.0 + ] + ], + "area": 18576.000000000004, + "bbox": [ + 267.0, + 155.99999999999997, + 129.0, + 144.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 273, + "image_id": 195, + "category_id": 1, + "segmentation": [ + [ + 292.0, + 125.99999999999997, + 429.00000000000006, + 125.99999999999997, + 429.00000000000006, + 270.0, + 292.0, + 270.0 + ] + ], + "area": 19728.00000000001, + "bbox": [ + 292.0, + 125.99999999999997, + 137.0, + 144.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 274, + "image_id": 196, + "category_id": 1, + "segmentation": [ + [ + 148.0, + 6.000000000000003, + 289.0, + 6.000000000000003, + 289.0, + 195.0, + 148.0, + 195.0 + ] + ], + "area": 26649.0, + "bbox": [ + 148.0, + 6.000000000000003, + 141.0, + 189.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 275, + "image_id": 196, + "category_id": 1, + "segmentation": [ + [ + 323.0, + 53.0, + 478.0, + 53.0, + 478.0, + 224.0, + 323.0, + 224.0 + ] + ], + "area": 26505.0, + "bbox": [ + 323.0, + 53.0, + 155.0, + 171.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 276, + "image_id": 196, + "category_id": 1, + "segmentation": [ + [ + 810.0, + 17.999999999999996, + 983.0, + 17.999999999999996, + 983.0, + 225.0, + 810.0, + 225.0 + ] + ], + "area": 35811.0, + "bbox": [ + 810.0, + 17.999999999999996, + 173.0, + 207.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 277, + "image_id": 197, + "category_id": 1, + "segmentation": [ + [ + 252.0, + 114.99999999999999, + 384.0, + 114.99999999999999, + 384.0, + 268.0, + 252.0, + 268.0 + ] + ], + "area": 20196.0, + "bbox": [ + 252.0, + 114.99999999999999, + 132.0, + 153.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 278, + "image_id": 198, + "category_id": 1, + "segmentation": [ + [ + 288.0, + 58.00000000000001, + 655.0, + 58.00000000000001, + 655.0, + 491.99999999999994, + 288.0, + 491.99999999999994 + ] + ], + "area": 159277.99999999997, + "bbox": [ + 288.0, + 58.00000000000001, + 367.0, + 434.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 279, + "image_id": 199, + "category_id": 1, + "segmentation": [ + [ + 226.0, + 89.00000000000001, + 385.0, + 89.00000000000001, + 385.0, + 252.0, + 226.0, + 252.0 + ] + ], + "area": 25917.0, + "bbox": [ + 226.0, + 89.00000000000001, + 159.0, + 163.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 280, + "image_id": 199, + "category_id": 1, + "segmentation": [ + [ + 741.0, + 18.999999999999996, + 959.9999999999999, + 18.999999999999996, + 959.9999999999999, + 258.0, + 741.0, + 258.0 + ] + ], + "area": 52340.99999999997, + "bbox": [ + 741.0, + 18.999999999999996, + 219.0, + 239.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 281, + "image_id": 200, + "category_id": 1, + "segmentation": [ + [ + 274.0, + 98.0, + 431.0, + 98.0, + 431.0, + 266.0, + 274.0, + 266.0 + ] + ], + "area": 26376.0, + "bbox": [ + 274.0, + 98.0, + 157.0, + 168.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 282, + "image_id": 201, + "category_id": 1, + "segmentation": [ + [ + 297.0, + 158.0, + 392.0, + 158.0, + 392.0, + 276.0, + 297.0, + 276.0 + ] + ], + "area": 11210.0, + "bbox": [ + 297.0, + 158.0, + 95.0, + 118.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 283, + "image_id": 202, + "category_id": 1, + "segmentation": [ + [ + 283.0, + 95.0, + 402.0, + 95.0, + 402.0, + 236.0, + 283.0, + 236.0 + ] + ], + "area": 16779.0, + "bbox": [ + 283.0, + 95.0, + 119.0, + 141.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 284, + "image_id": 203, + "category_id": 1, + "segmentation": [ + [ + 316.0, + 150.0, + 843.0, + 150.0, + 843.0, + 742.0, + 316.0, + 742.0 + ] + ], + "area": 311984.0, + "bbox": [ + 316.0, + 150.0, + 527.0, + 592.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 285, + "image_id": 204, + "category_id": 1, + "segmentation": [ + [ + 241.0, + 10.999999999999993, + 469.0, + 10.999999999999993, + 469.0, + 264.0, + 241.0, + 264.0 + ] + ], + "area": 57684.0, + "bbox": [ + 241.0, + 10.999999999999993, + 228.0, + 253.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 286, + "image_id": 205, + "category_id": 1, + "segmentation": [ + [ + 203.99999999999997, + 108.99999999999999, + 363.0, + 108.99999999999999, + 363.0, + 321.0, + 203.99999999999997, + 321.0 + ] + ], + "area": 33708.00000000001, + "bbox": [ + 203.99999999999997, + 108.99999999999999, + 159.0, + 212.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 287, + "image_id": 205, + "category_id": 1, + "segmentation": [ + [ + 657.0000000000001, + 119.0, + 816.0, + 119.0, + 816.0, + 316.00000000000006, + 657.0000000000001, + 316.00000000000006 + ] + ], + "area": 31322.999999999985, + "bbox": [ + 657.0000000000001, + 119.0, + 159.0, + 197.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 288, + "image_id": 206, + "category_id": 1, + "segmentation": [ + [ + 274.00000000000006, + 64.0, + 407.0, + 64.0, + 407.0, + 236.0, + 274.00000000000006, + 236.0 + ] + ], + "area": 22875.99999999999, + "bbox": [ + 274.00000000000006, + 64.0, + 133.0, + 172.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 289, + "image_id": 207, + "category_id": 1, + "segmentation": [ + [ + 381.99999999999994, + 83.0, + 595.0, + 83.0, + 595.0, + 352.0, + 381.99999999999994, + 352.0 + ] + ], + "area": 57297.000000000015, + "bbox": [ + 381.99999999999994, + 83.0, + 213.0, + 269.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 290, + "image_id": 208, + "category_id": 1, + "segmentation": [ + [ + 46.0, + 131.0, + 99.99999999999999, + 131.0, + 99.99999999999999, + 201.0, + 46.0, + 201.0 + ] + ], + "area": 3779.999999999999, + "bbox": [ + 46.0, + 131.0, + 54.0, + 69.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 291, + "image_id": 208, + "category_id": 1, + "segmentation": [ + [ + 128.0, + 155.0, + 185.0, + 155.0, + 185.0, + 208.0, + 128.0, + 208.0 + ] + ], + "area": 3021.0, + "bbox": [ + 128.0, + 155.0, + 57.0, + 53.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 292, + "image_id": 208, + "category_id": 1, + "segmentation": [ + [ + 265.0, + 159.00000000000003, + 294.00000000000006, + 159.00000000000003, + 294.00000000000006, + 194.0, + 265.0, + 194.0 + ] + ], + "area": 1015.0000000000011, + "bbox": [ + 265.0, + 159.00000000000003, + 29.0, + 34.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 293, + "image_id": 209, + "category_id": 1, + "segmentation": [ + [ + 280.00000000000006, + 96.0, + 409.00000000000006, + 96.0, + 409.00000000000006, + 234.0, + 280.00000000000006, + 234.0 + ] + ], + "area": 17802.0, + "bbox": [ + 280.00000000000006, + 96.0, + 129.0, + 138.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 294, + "image_id": 210, + "category_id": 1, + "segmentation": [ + [ + 258.0, + 164.99999999999997, + 390.0, + 164.99999999999997, + 390.0, + 315.99999999999994, + 258.0, + 315.99999999999994 + ] + ], + "area": 19931.999999999996, + "bbox": [ + 258.0, + 164.99999999999997, + 132.0, + 151.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 295, + "image_id": 211, + "category_id": 1, + "segmentation": [ + [ + 101.0, + 108.00000000000001, + 299.0, + 108.00000000000001, + 299.0, + 411.0, + 101.0, + 411.0 + ] + ], + "area": 59994.0, + "bbox": [ + 101.0, + 108.00000000000001, + 198.0, + 303.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 296, + "image_id": 211, + "category_id": 1, + "segmentation": [ + [ + 332.0, + 125.0, + 552.0, + 125.0, + 552.0, + 399.0, + 332.0, + 399.0 + ] + ], + "area": 60280.0, + "bbox": [ + 332.0, + 125.0, + 220.0, + 274.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 297, + "image_id": 211, + "category_id": 1, + "segmentation": [ + [ + 732.0, + 46.99999999999999, + 945.0, + 46.99999999999999, + 945.0, + 338.0, + 732.0, + 338.0 + ] + ], + "area": 61983.0, + "bbox": [ + 732.0, + 46.99999999999999, + 213.0, + 291.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 298, + "image_id": 212, + "category_id": 1, + "segmentation": [ + [ + 276.0, + 43.999999999999986, + 728.0, + 43.999999999999986, + 728.0, + 529.0, + 276.0, + 529.0 + ] + ], + "area": 219220.0, + "bbox": [ + 276.0, + 43.999999999999986, + 452.0, + 485.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 299, + "image_id": 213, + "category_id": 1, + "segmentation": [ + [ + 205.0, + 94.00000000000001, + 604.0, + 94.00000000000001, + 604.0, + 576.0, + 205.0, + 576.0 + ] + ], + "area": 192318.0, + "bbox": [ + 205.0, + 94.00000000000001, + 399.0, + 481.99999999999994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 300, + "image_id": 214, + "category_id": 1, + "segmentation": [ + [ + 246.0, + 77.00000000000001, + 766.0, + 77.00000000000001, + 766.0, + 663.0, + 246.0, + 663.0 + ] + ], + "area": 304720.0, + "bbox": [ + 246.0, + 77.00000000000001, + 520.0, + 586.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 301, + "image_id": 215, + "category_id": 1, + "segmentation": [ + [ + 319.0, + 133.0, + 739.0, + 133.0, + 739.0, + 645.0, + 319.0, + 645.0 + ] + ], + "area": 215040.0, + "bbox": [ + 319.0, + 133.0, + 420.0, + 512.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 302, + "image_id": 216, + "category_id": 1, + "segmentation": [ + [ + 300.00000000000006, + 139.0, + 411.0000000000001, + 139.0, + 411.0000000000001, + 263.0, + 300.00000000000006, + 263.0 + ] + ], + "area": 13764.000000000007, + "bbox": [ + 300.00000000000006, + 139.0, + 111.00000000000001, + 123.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 303, + "image_id": 217, + "category_id": 1, + "segmentation": [ + [ + 462.0, + 108.99999999999999, + 620.0, + 108.99999999999999, + 620.0, + 347.0, + 462.0, + 347.0 + ] + ], + "area": 37604.0, + "bbox": [ + 462.0, + 108.99999999999999, + 158.0, + 238.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 304, + "image_id": 218, + "category_id": 1, + "segmentation": [ + [ + 307.0, + 149.0, + 439.00000000000006, + 149.0, + 439.00000000000006, + 304.0, + 307.0, + 304.0 + ] + ], + "area": 20460.000000000007, + "bbox": [ + 307.0, + 149.0, + 132.0, + 155.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 305, + "image_id": 219, + "category_id": 1, + "segmentation": [ + [ + 499.0, + 37.999999999999986, + 826.0, + 37.999999999999986, + 826.0, + 510.0, + 499.0, + 510.0 + ] + ], + "area": 154344.0, + "bbox": [ + 499.0, + 37.999999999999986, + 327.0, + 472.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 306, + "image_id": 220, + "category_id": 1, + "segmentation": [ + [ + 262.0, + 125.00000000000001, + 403.0, + 125.00000000000001, + 403.0, + 294.0, + 262.0, + 294.0 + ] + ], + "area": 23829.0, + "bbox": [ + 262.0, + 125.00000000000001, + 141.0, + 169.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 307, + "image_id": 221, + "category_id": 1, + "segmentation": [ + [ + 307.0, + 151.0, + 420.0, + 151.0, + 420.0, + 281.0, + 307.0, + 281.0 + ] + ], + "area": 14690.0, + "bbox": [ + 307.0, + 151.0, + 113.0, + 130.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 308, + "image_id": 222, + "category_id": 1, + "segmentation": [ + [ + 391.0, + 106.0, + 602.0, + 106.0, + 602.0, + 365.0, + 391.0, + 365.0 + ] + ], + "area": 54649.0, + "bbox": [ + 391.0, + 106.0, + 211.0, + 259.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 309, + "image_id": 223, + "category_id": 1, + "segmentation": [ + [ + 237.00000000000003, + 113.99999999999999, + 397.0, + 113.99999999999999, + 397.0, + 299.0, + 237.00000000000003, + 299.0 + ] + ], + "area": 29599.999999999996, + "bbox": [ + 237.00000000000003, + 113.99999999999999, + 160.0, + 185.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 310, + "image_id": 224, + "category_id": 1, + "segmentation": [ + [ + 307.0, + 88.99999999999999, + 715.0, + 88.99999999999999, + 715.0, + 615.0000000000001, + 307.0, + 615.0000000000001 + ] + ], + "area": 214608.00000000006, + "bbox": [ + 307.0, + 88.99999999999999, + 408.0, + 526.0000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 311, + "image_id": 225, + "category_id": 1, + "segmentation": [ + [ + 554.0, + 3.0000000000000053, + 732.0, + 3.0000000000000053, + 732.0, + 227.0, + 554.0, + 227.0 + ] + ], + "area": 39872.0, + "bbox": [ + 554.0, + 3.0000000000000053, + 178.0, + 223.99999999999997 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 312, + "image_id": 226, + "category_id": 1, + "segmentation": [ + [ + 279.0, + 125.00000000000001, + 398.00000000000006, + 125.00000000000001, + 398.00000000000006, + 262.0, + 279.0, + 262.0 + ] + ], + "area": 16303.000000000007, + "bbox": [ + 279.0, + 125.00000000000001, + 119.0, + 137.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 313, + "image_id": 227, + "category_id": 1, + "segmentation": [ + [ + 369.0, + 60.00000000000002, + 607.0, + 60.00000000000002, + 607.0, + 437.0, + 369.0, + 437.0 + ] + ], + "area": 89726.0, + "bbox": [ + 369.0, + 60.00000000000002, + 238.0, + 377.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 314, + "image_id": 228, + "category_id": 1, + "segmentation": [ + [ + 225.0, + 313.0, + 351.0, + 313.0, + 351.0, + 442.0, + 225.0, + 442.0 + ] + ], + "area": 16254.0, + "bbox": [ + 225.0, + 313.0, + 126.0, + 129.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 315, + "image_id": 228, + "category_id": 1, + "segmentation": [ + [ + 428.0, + 264.0, + 541.0, + 264.0, + 541.0, + 403.0, + 428.0, + 403.0 + ] + ], + "area": 15707.0, + "bbox": [ + 428.0, + 264.0, + 113.0, + 139.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 316, + "image_id": 228, + "category_id": 1, + "segmentation": [ + [ + 597.0, + 247.00000000000003, + 721.0, + 247.00000000000003, + 721.0, + 403.0, + 597.0, + 403.0 + ] + ], + "area": 19343.999999999996, + "bbox": [ + 597.0, + 247.00000000000003, + 124.0, + 156.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 317, + "image_id": 228, + "category_id": 1, + "segmentation": [ + [ + 780.0, + 220.0, + 948.0, + 220.0, + 948.0, + 414.00000000000006, + 780.0, + 414.00000000000006 + ] + ], + "area": 32592.00000000001, + "bbox": [ + 780.0, + 220.0, + 168.0, + 194.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 318, + "image_id": 229, + "category_id": 1, + "segmentation": [ + [ + 378.0, + 168.00000000000003, + 658.0, + 168.00000000000003, + 658.0, + 487.0, + 378.0, + 487.0 + ] + ], + "area": 89320.0, + "bbox": [ + 378.0, + 168.00000000000003, + 280.0, + 319.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 319, + "image_id": 230, + "category_id": 1, + "segmentation": [ + [ + 247.0, + 110.00000000000003, + 764.0, + 110.00000000000003, + 764.0, + 745.0, + 247.0, + 745.0 + ] + ], + "area": 328295.0, + "bbox": [ + 247.0, + 110.00000000000003, + 517.0, + 635.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 320, + "image_id": 231, + "category_id": 1, + "segmentation": [ + [ + 253.0, + 39.99999999999999, + 400.0, + 39.99999999999999, + 400.0, + 189.0, + 253.0, + 189.0 + ] + ], + "area": 21903.0, + "bbox": [ + 253.0, + 39.99999999999999, + 147.0, + 149.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 321, + "image_id": 231, + "category_id": 1, + "segmentation": [ + [ + 492.0, + 22.999999999999996, + 636.0, + 22.999999999999996, + 636.0, + 200.0, + 492.0, + 200.0 + ] + ], + "area": 25488.0, + "bbox": [ + 492.0, + 22.999999999999996, + 144.0, + 177.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 322, + "image_id": 232, + "category_id": 1, + "segmentation": [ + [ + 246.0, + 162.99999999999997, + 376.0, + 162.99999999999997, + 376.0, + 309.99999999999994, + 246.0, + 309.99999999999994 + ] + ], + "area": 19109.999999999996, + "bbox": [ + 246.0, + 162.99999999999997, + 130.0, + 147.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 323, + "image_id": 233, + "category_id": 1, + "segmentation": [ + [ + 327.0, + 36.0, + 706.0, + 36.0, + 706.0, + 451.00000000000006, + 327.0, + 451.00000000000006 + ] + ], + "area": 157285.00000000003, + "bbox": [ + 327.0, + 36.0, + 379.0, + 415.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 324, + "image_id": 234, + "category_id": 1, + "segmentation": [ + [ + 246.99999999999997, + 17.00000000000001, + 443.99999999999994, + 17.00000000000001, + 443.99999999999994, + 266.0, + 246.99999999999997, + 266.0 + ] + ], + "area": 49052.99999999999, + "bbox": [ + 246.99999999999997, + 17.00000000000001, + 197.0, + 249.00000000000003 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 325, + "image_id": 235, + "category_id": 1, + "segmentation": [ + [ + 268.0, + 137.0, + 402.0, + 137.0, + 402.0, + 277.0, + 268.0, + 277.0 + ] + ], + "area": 18760.0, + "bbox": [ + 268.0, + 137.0, + 134.0, + 140.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 326, + "image_id": 236, + "category_id": 1, + "segmentation": [ + [ + 152.0, + 20.0, + 643.0, + 20.0, + 643.0, + 633.0, + 152.0, + 633.0 + ] + ], + "area": 300983.0, + "bbox": [ + 152.0, + 20.0, + 491.0, + 613.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 327, + "image_id": 237, + "category_id": 1, + "segmentation": [ + [ + 290.0, + 92.0, + 417.0, + 92.0, + 417.0, + 228.0, + 290.0, + 228.0 + ] + ], + "area": 17272.0, + "bbox": [ + 290.0, + 92.0, + 127.00000000000001, + 136.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 328, + "image_id": 238, + "category_id": 1, + "segmentation": [ + [ + 196.0, + 96.0, + 778.0, + 96.0, + 778.0, + 825.0, + 196.0, + 825.0 + ] + ], + "area": 424278.0, + "bbox": [ + 196.0, + 96.0, + 582.0, + 729.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 329, + "image_id": 239, + "category_id": 1, + "segmentation": [ + [ + 326.0, + 139.99999999999997, + 429.0, + 139.99999999999997, + 429.0, + 252.0, + 326.0, + 252.0 + ] + ], + "area": 11536.000000000004, + "bbox": [ + 326.0, + 139.99999999999997, + 103.0, + 112.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 330, + "image_id": 240, + "category_id": 1, + "segmentation": [ + [ + 235.00000000000003, + 184.0, + 286.00000000000006, + 184.0, + 286.00000000000006, + 240.99999999999997, + 235.00000000000003, + 240.99999999999997 + ] + ], + "area": 2907.0, + "bbox": [ + 235.00000000000003, + 184.0, + 51.00000000000001, + 57.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 331, + "image_id": 240, + "category_id": 1, + "segmentation": [ + [ + 319.0, + 171.99999999999997, + 377.00000000000006, + 171.99999999999997, + 377.00000000000006, + 236.0, + 319.0, + 236.0 + ] + ], + "area": 3712.0000000000055, + "bbox": [ + 319.0, + 171.99999999999997, + 58.0, + 64.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 332, + "image_id": 241, + "category_id": 1, + "segmentation": [ + [ + 291.0, + 79.00000000000001, + 398.00000000000006, + 79.00000000000001, + 398.00000000000006, + 217.0, + 291.0, + 217.0 + ] + ], + "area": 14766.000000000007, + "bbox": [ + 291.0, + 79.00000000000001, + 107.00000000000001, + 138.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 333, + "image_id": 242, + "category_id": 1, + "segmentation": [ + [ + 182.0, + 193.00000000000006, + 803.0, + 193.00000000000006, + 803.0, + 1026.0, + 182.0, + 1026.0 + ] + ], + "area": 517293.0, + "bbox": [ + 182.0, + 193.00000000000006, + 621.0, + 833.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 334, + "image_id": 243, + "category_id": 1, + "segmentation": [ + [ + 290.00000000000006, + 151.0, + 426.0000000000001, + 151.0, + 426.0000000000001, + 314.0, + 290.00000000000006, + 314.0 + ] + ], + "area": 22168.00000000001, + "bbox": [ + 290.00000000000006, + 151.0, + 136.0, + 163.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 335, + "image_id": 244, + "category_id": 1, + "segmentation": [ + [ + 377.0, + 86.0, + 733.0, + 86.0, + 733.0, + 464.0, + 377.0, + 464.0 + ] + ], + "area": 134568.0, + "bbox": [ + 377.0, + 86.0, + 356.0, + 378.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 336, + "image_id": 245, + "category_id": 1, + "segmentation": [ + [ + 256.0, + 121.0, + 393.00000000000006, + 121.0, + 393.00000000000006, + 269.0, + 256.0, + 269.0 + ] + ], + "area": 20276.000000000007, + "bbox": [ + 256.0, + 121.0, + 137.0, + 148.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 337, + "image_id": 246, + "category_id": 1, + "segmentation": [ + [ + 60.0, + 531.0, + 260.0, + 531.0, + 260.0, + 773.0, + 60.0, + 773.0 + ] + ], + "area": 48400.0, + "bbox": [ + 60.0, + 531.0, + 200.0, + 242.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 338, + "image_id": 246, + "category_id": 1, + "segmentation": [ + [ + 657.0, + 134.0, + 888.0, + 134.0, + 888.0, + 403.0, + 657.0, + 403.0 + ] + ], + "area": 62139.0, + "bbox": [ + 657.0, + 134.0, + 231.0, + 269.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 339, + "image_id": 247, + "category_id": 1, + "segmentation": [ + [ + 293.0, + 134.00000000000003, + 538.0, + 134.00000000000003, + 538.0, + 416.00000000000006, + 293.0, + 416.00000000000006 + ] + ], + "area": 69090.0, + "bbox": [ + 293.0, + 134.00000000000003, + 245.0, + 282.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 340, + "image_id": 248, + "category_id": 1, + "segmentation": [ + [ + 275.00000000000006, + 143.0, + 391.0000000000001, + 143.0, + 391.0000000000001, + 281.0, + 275.00000000000006, + 281.0 + ] + ], + "area": 16008.000000000007, + "bbox": [ + 275.00000000000006, + 143.0, + 116.00000000000001, + 138.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 341, + "image_id": 249, + "category_id": 1, + "segmentation": [ + [ + 289.0, + 61.99999999999998, + 655.0, + 61.99999999999998, + 655.0, + 576.0, + 289.0, + 576.0 + ] + ], + "area": 188124.0, + "bbox": [ + 289.0, + 61.99999999999998, + 366.0, + 514.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 342, + "image_id": 250, + "category_id": 1, + "segmentation": [ + [ + 98.0, + 210.0, + 209.0, + 210.0, + 209.0, + 358.0, + 98.0, + 358.0 + ] + ], + "area": 16428.0, + "bbox": [ + 98.0, + 210.0, + 111.0, + 148.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 343, + "image_id": 250, + "category_id": 1, + "segmentation": [ + [ + 316.0, + 228.0, + 435.0, + 228.0, + 435.0, + 356.0, + 316.0, + 356.0 + ] + ], + "area": 15232.0, + "bbox": [ + 316.0, + 228.0, + 119.0, + 128.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 344, + "image_id": 250, + "category_id": 1, + "segmentation": [ + [ + 552.0, + 144.99999999999997, + 677.0, + 144.99999999999997, + 677.0, + 302.0, + 552.0, + 302.0 + ] + ], + "area": 19625.000000000004, + "bbox": [ + 552.0, + 144.99999999999997, + 125.0, + 157.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 345, + "image_id": 250, + "category_id": 1, + "segmentation": [ + [ + 827.0, + 143.99999999999997, + 960.0, + 143.99999999999997, + 960.0, + 325.99999999999994, + 827.0, + 325.99999999999994 + ] + ], + "area": 24205.999999999996, + "bbox": [ + 827.0, + 143.99999999999997, + 133.0, + 182.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 346, + "image_id": 251, + "category_id": 1, + "segmentation": [ + [ + 422.0, + 226.0, + 553.0, + 226.0, + 553.0, + 402.0, + 422.0, + 402.0 + ] + ], + "area": 23056.0, + "bbox": [ + 422.0, + 226.0, + 131.0, + 176.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 347, + "image_id": 252, + "category_id": 1, + "segmentation": [ + [ + 315.0, + 99.0, + 438.0, + 99.0, + 438.0, + 247.00000000000003, + 315.0, + 247.00000000000003 + ] + ], + "area": 18204.000000000004, + "bbox": [ + 315.0, + 99.0, + 123.0, + 148.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 348, + "image_id": 253, + "category_id": 1, + "segmentation": [ + [ + 137.0, + 130.0, + 482.0, + 130.0, + 482.0, + 591.0000000000001, + 137.0, + 591.0000000000001 + ] + ], + "area": 159045.00000000003, + "bbox": [ + 137.0, + 130.0, + 345.0, + 461.00000000000006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 349, + "image_id": 253, + "category_id": 1, + "segmentation": [ + [ + 602.0, + 184.00000000000003, + 969.0, + 184.00000000000003, + 969.0, + 641.0, + 602.0, + 641.0 + ] + ], + "area": 167719.0, + "bbox": [ + 602.0, + 184.00000000000003, + 367.0, + 456.99999999999994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 350, + "image_id": 254, + "category_id": 1, + "segmentation": [ + [ + 279.0, + 117.00000000000001, + 416.0, + 117.00000000000001, + 416.0, + 283.0, + 279.0, + 283.0 + ] + ], + "area": 22742.0, + "bbox": [ + 279.0, + 117.00000000000001, + 137.0, + 166.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 351, + "image_id": 255, + "category_id": 1, + "segmentation": [ + [ + 196.0, + 11.000000000000014, + 380.0, + 11.000000000000014, + 380.0, + 280.0, + 196.0, + 280.0 + ] + ], + "area": 49496.0, + "bbox": [ + 196.0, + 11.000000000000014, + 184.0, + 269.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 352, + "image_id": 255, + "category_id": 1, + "segmentation": [ + [ + 644.0, + 123.0, + 825.0, + 123.0, + 825.0, + 348.0, + 644.0, + 348.0 + ] + ], + "area": 40725.0, + "bbox": [ + 644.0, + 123.0, + 181.0, + 225.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 353, + "image_id": 256, + "category_id": 1, + "segmentation": [ + [ + 363.0, + 62.99999999999999, + 677.0, + 62.99999999999999, + 677.0, + 488.00000000000006, + 363.0, + 488.00000000000006 + ] + ], + "area": 133450.00000000003, + "bbox": [ + 363.0, + 62.99999999999999, + 314.0, + 425.00000000000006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 354, + "image_id": 257, + "category_id": 1, + "segmentation": [ + [ + 242.00000000000003, + 70.99999999999999, + 385.0, + 70.99999999999999, + 385.0, + 236.99999999999997, + 242.00000000000003, + 236.99999999999997 + ] + ], + "area": 23737.999999999996, + "bbox": [ + 242.00000000000003, + 70.99999999999999, + 143.0, + 166.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 355, + "image_id": 258, + "category_id": 1, + "segmentation": [ + [ + 113.0, + 65.99999999999996, + 870.0, + 65.99999999999996, + 870.0, + 955.0000000000001, + 113.0, + 955.0000000000001 + ] + ], + "area": 672973.0000000001, + "bbox": [ + 113.0, + 65.99999999999996, + 757.0, + 889.0000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 356, + "image_id": 259, + "category_id": 1, + "segmentation": [ + [ + 268.00000000000006, + 73.99999999999999, + 401.0, + 73.99999999999999, + 401.0, + 231.99999999999997, + 268.00000000000006, + 231.99999999999997 + ] + ], + "area": 21013.999999999993, + "bbox": [ + 268.00000000000006, + 73.99999999999999, + 133.0, + 158.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 357, + "image_id": 260, + "category_id": 1, + "segmentation": [ + [ + 328.0, + 54.999999999999986, + 543.0, + 54.999999999999986, + 543.0, + 305.0, + 328.0, + 305.0 + ] + ], + "area": 53750.0, + "bbox": [ + 328.0, + 54.999999999999986, + 215.0, + 250.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 358, + "image_id": 261, + "category_id": 1, + "segmentation": [ + [ + 90.0, + 56.0, + 184.0, + 56.0, + 184.0, + 164.0, + 90.0, + 164.0 + ] + ], + "area": 10152.0, + "bbox": [ + 90.0, + 56.0, + 94.0, + 108.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 359, + "image_id": 261, + "category_id": 1, + "segmentation": [ + [ + 295.0, + 85.0, + 371.0, + 85.0, + 371.0, + 186.99999999999997, + 295.0, + 186.99999999999997 + ] + ], + "area": 7751.999999999998, + "bbox": [ + 295.0, + 85.0, + 76.0, + 102.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 360, + "image_id": 261, + "category_id": 1, + "segmentation": [ + [ + 476.0, + 54.999999999999986, + 567.0, + 54.999999999999986, + 567.0, + 164.0, + 476.0, + 164.0 + ] + ], + "area": 9919.000000000002, + "bbox": [ + 476.0, + 54.999999999999986, + 91.0, + 109.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 361, + "image_id": 261, + "category_id": 1, + "segmentation": [ + [ + 686.0, + 65.0, + 779.0, + 65.0, + 779.0, + 173.0, + 686.0, + 173.0 + ] + ], + "area": 10044.0, + "bbox": [ + 686.0, + 65.0, + 93.0, + 108.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 362, + "image_id": 261, + "category_id": 1, + "segmentation": [ + [ + 861.0, + 49.0, + 963.0, + 49.0, + 963.0, + 165.0, + 861.0, + 165.0 + ] + ], + "area": 11832.0, + "bbox": [ + 861.0, + 49.0, + 102.0, + 116.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 363, + "image_id": 262, + "category_id": 1, + "segmentation": [ + [ + 219.0, + 423.99999999999994, + 511.0, + 423.99999999999994, + 511.0, + 753.0, + 219.0, + 753.0 + ] + ], + "area": 96068.00000000001, + "bbox": [ + 219.0, + 423.99999999999994, + 292.0, + 329.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 364, + "image_id": 263, + "category_id": 1, + "segmentation": [ + [ + 372.0, + 216.99999999999994, + 661.0, + 216.99999999999994, + 661.0, + 581.0, + 372.0, + 581.0 + ] + ], + "area": 105196.00000000001, + "bbox": [ + 372.0, + 216.99999999999994, + 289.0, + 364.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 365, + "image_id": 264, + "category_id": 1, + "segmentation": [ + [ + 116.00000000000001, + 43.99999999999999, + 160.0, + 43.99999999999999, + 160.0, + 92.0, + 116.00000000000001, + 92.0 + ] + ], + "area": 2111.9999999999995, + "bbox": [ + 116.00000000000001, + 43.99999999999999, + 44.0, + 48.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 366, + "image_id": 265, + "category_id": 1, + "segmentation": [ + [ + 274.0, + 221.00000000000003, + 661.0, + 221.00000000000003, + 661.0, + 693.0, + 274.0, + 693.0 + ] + ], + "area": 182664.0, + "bbox": [ + 274.0, + 221.00000000000003, + 387.0, + 472.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 367, + "image_id": 266, + "category_id": 1, + "segmentation": [ + [ + 269.0, + 88.00000000000003, + 885.0, + 88.00000000000003, + 885.0, + 871.0, + 269.0, + 871.0 + ] + ], + "area": 482328.0, + "bbox": [ + 269.0, + 88.00000000000003, + 616.0, + 782.9999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 368, + "image_id": 267, + "category_id": 1, + "segmentation": [ + [ + 377.0, + 32.99999999999998, + 596.0, + 32.99999999999998, + 596.0, + 266.0, + 377.0, + 266.0 + ] + ], + "area": 51027.00000000001, + "bbox": [ + 377.0, + 32.99999999999998, + 219.0, + 233.00000000000003 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 369, + "image_id": 268, + "category_id": 1, + "segmentation": [ + [ + 339.0, + 80.00000000000001, + 662.0, + 80.00000000000001, + 662.0, + 496.0, + 339.0, + 496.0 + ] + ], + "area": 134368.0, + "bbox": [ + 339.0, + 80.00000000000001, + 323.0, + 416.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 370, + "image_id": 269, + "category_id": 1, + "segmentation": [ + [ + 296.0, + 162.99999999999997, + 686.0, + 162.99999999999997, + 686.0, + 719.0000000000001, + 296.0, + 719.0000000000001 + ] + ], + "area": 216840.00000000006, + "bbox": [ + 296.0, + 162.99999999999997, + 390.0, + 556.0000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 371, + "image_id": 270, + "category_id": 1, + "segmentation": [ + [ + 301.0, + 122.00000000000004, + 797.0, + 122.00000000000004, + 797.0, + 705.0, + 301.0, + 705.0 + ] + ], + "area": 289168.0, + "bbox": [ + 301.0, + 122.00000000000004, + 496.0, + 583.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 372, + "image_id": 271, + "category_id": 1, + "segmentation": [ + [ + 385.0, + 114.99999999999999, + 710.0, + 114.99999999999999, + 710.0, + 537.0, + 385.0, + 537.0 + ] + ], + "area": 137150.0, + "bbox": [ + 385.0, + 114.99999999999999, + 325.0, + 422.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 373, + "image_id": 272, + "category_id": 1, + "segmentation": [ + [ + 287.0, + 111.99999999999999, + 415.0, + 111.99999999999999, + 415.0, + 255.0, + 287.0, + 255.0 + ] + ], + "area": 18304.0, + "bbox": [ + 287.0, + 111.99999999999999, + 128.0, + 143.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 374, + "image_id": 273, + "category_id": 1, + "segmentation": [ + [ + 46.0, + 126.0, + 153.0, + 126.0, + 153.0, + 269.0, + 46.0, + 269.0 + ] + ], + "area": 15301.0, + "bbox": [ + 46.0, + 126.0, + 107.0, + 143.00000000000003 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 375, + "image_id": 273, + "category_id": 1, + "segmentation": [ + [ + 175.0, + 9.000000000000007, + 284.00000000000006, + 9.000000000000007, + 284.00000000000006, + 158.0, + 175.0, + 158.0 + ] + ], + "area": 16241.00000000001, + "bbox": [ + 175.0, + 9.000000000000007, + 109.00000000000001, + 149.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 376, + "image_id": 274, + "category_id": 1, + "segmentation": [ + [ + 330.0, + 109.0, + 750.0, + 109.0, + 750.0, + 686.0, + 330.0, + 686.0 + ] + ], + "area": 242340.0, + "bbox": [ + 330.0, + 109.0, + 420.0, + 577.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 377, + "image_id": 275, + "category_id": 1, + "segmentation": [ + [ + 260.0, + 91.0, + 400.0, + 91.0, + 400.0, + 237.0, + 260.0, + 237.0 + ] + ], + "area": 20440.0, + "bbox": [ + 260.0, + 91.0, + 140.0, + 146.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 378, + "image_id": 275, + "category_id": 1, + "segmentation": [ + [ + 799.0, + 140.99999999999997, + 918.0, + 140.99999999999997, + 918.0, + 260.0, + 799.0, + 260.0 + ] + ], + "area": 14161.000000000004, + "bbox": [ + 799.0, + 140.99999999999997, + 119.0, + 119.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 379, + "image_id": 276, + "category_id": 1, + "segmentation": [ + [ + 282.0, + 66.0, + 654.0, + 66.0, + 654.0, + 488.0, + 282.0, + 488.0 + ] + ], + "area": 156984.0, + "bbox": [ + 282.0, + 66.0, + 372.0, + 422.00000000000006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 380, + "image_id": 277, + "category_id": 1, + "segmentation": [ + [ + 690.0, + 233.99999999999997, + 935.0, + 233.99999999999997, + 935.0, + 494.99999999999994, + 690.0, + 494.99999999999994 + ] + ], + "area": 63945.0, + "bbox": [ + 690.0, + 233.99999999999997, + 245.0, + 261.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 381, + "image_id": 278, + "category_id": 1, + "segmentation": [ + [ + 320.0, + 31.000000000000004, + 675.0, + 31.000000000000004, + 675.0, + 531.0, + 320.0, + 531.0 + ] + ], + "area": 177500.0, + "bbox": [ + 320.0, + 31.000000000000004, + 355.0, + 500.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 382, + "image_id": 279, + "category_id": 1, + "segmentation": [ + [ + 134.0, + 169.0, + 241.0, + 169.0, + 241.0, + 288.0, + 134.0, + 288.0 + ] + ], + "area": 12733.0, + "bbox": [ + 134.0, + 169.0, + 107.0, + 119.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 383, + "image_id": 279, + "category_id": 1, + "segmentation": [ + [ + 680.0, + 159.99999999999997, + 804.0, + 159.99999999999997, + 804.0, + 302.99999999999994, + 680.0, + 302.99999999999994 + ] + ], + "area": 17731.999999999996, + "bbox": [ + 680.0, + 159.99999999999997, + 124.0, + 143.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 384, + "image_id": 280, + "category_id": 1, + "segmentation": [ + [ + 148.0, + 69.99999999999999, + 316.0, + 69.99999999999999, + 316.0, + 342.0, + 148.0, + 342.0 + ] + ], + "area": 45696.0, + "bbox": [ + 148.0, + 69.99999999999999, + 168.0, + 272.00000000000006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 385, + "image_id": 280, + "category_id": 1, + "segmentation": [ + [ + 422.0, + 71.00000000000001, + 640.0, + 71.00000000000001, + 640.0, + 317.0, + 422.0, + 317.0 + ] + ], + "area": 53628.0, + "bbox": [ + 422.0, + 71.00000000000001, + 218.0, + 246.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 386, + "image_id": 281, + "category_id": 1, + "segmentation": [ + [ + 186.0, + 40.0, + 366.0, + 40.0, + 366.0, + 249.0, + 186.0, + 249.0 + ] + ], + "area": 37620.0, + "bbox": [ + 186.0, + 40.0, + 180.0, + 209.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 387, + "image_id": 281, + "category_id": 1, + "segmentation": [ + [ + 715.0, + 56.0, + 891.0, + 56.0, + 891.0, + 264.0, + 715.0, + 264.0 + ] + ], + "area": 36608.0, + "bbox": [ + 715.0, + 56.0, + 176.0, + 208.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 388, + "image_id": 282, + "category_id": 1, + "segmentation": [ + [ + 3.0, + 120.00000000000003, + 389.0, + 120.00000000000003, + 389.0, + 734.9999999999999, + 3.0, + 734.9999999999999 + ] + ], + "area": 237389.99999999994, + "bbox": [ + 3.0, + 120.00000000000003, + 386.0, + 614.9999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 389, + "image_id": 282, + "category_id": 1, + "segmentation": [ + [ + 389.0, + 172.00000000000003, + 773.0, + 172.00000000000003, + 773.0, + 742.0, + 389.0, + 742.0 + ] + ], + "area": 218880.0, + "bbox": [ + 389.0, + 172.00000000000003, + 384.0, + 570.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 390, + "image_id": 283, + "category_id": 1, + "segmentation": [ + [ + 85.0, + 142.00000000000003, + 186.99999999999997, + 142.00000000000003, + 186.99999999999997, + 267.0, + 85.0, + 267.0 + ] + ], + "area": 12749.999999999993, + "bbox": [ + 85.0, + 142.00000000000003, + 101.99999999999999, + 125.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 391, + "image_id": 284, + "category_id": 1, + "segmentation": [ + [ + 220.0, + 110.00000000000001, + 381.0, + 110.00000000000001, + 381.0, + 277.0, + 220.0, + 277.0 + ] + ], + "area": 26887.0, + "bbox": [ + 220.0, + 110.00000000000001, + 161.0, + 167.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 392, + "image_id": 285, + "category_id": 1, + "segmentation": [ + [ + 89.0, + 155.0, + 174.00000000000003, + 155.0, + 174.00000000000003, + 274.0, + 89.0, + 274.0 + ] + ], + "area": 10115.000000000004, + "bbox": [ + 89.0, + 155.0, + 85.0, + 119.00000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 393, + "image_id": 285, + "category_id": 1, + "segmentation": [ + [ + 198.00000000000003, + 133.0, + 325.0, + 133.0, + 325.0, + 265.0, + 198.00000000000003, + 265.0 + ] + ], + "area": 16763.999999999996, + "bbox": [ + 198.00000000000003, + 133.0, + 127.0, + 132.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 394, + "image_id": 286, + "category_id": 1, + "segmentation": [ + [ + 314.0, + 59.99999999999999, + 450.0, + 59.99999999999999, + 450.0, + 212.99999999999997, + 314.0, + 212.99999999999997 + ] + ], + "area": 20807.999999999996, + "bbox": [ + 314.0, + 59.99999999999999, + 136.0, + 153.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 395, + "image_id": 286, + "category_id": 1, + "segmentation": [ + [ + 597.0, + 6.000000000000003, + 731.0, + 6.000000000000003, + 731.0, + 138.0, + 597.0, + 138.0 + ] + ], + "area": 17688.0, + "bbox": [ + 597.0, + 6.000000000000003, + 134.0, + 132.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 396, + "image_id": 287, + "category_id": 1, + "segmentation": [ + [ + 455.0, + 120.99999999999999, + 746.0, + 120.99999999999999, + 746.0, + 530.0, + 455.0, + 530.0 + ] + ], + "area": 119019.0, + "bbox": [ + 455.0, + 120.99999999999999, + 291.0, + 409.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 397, + "image_id": 288, + "category_id": 1, + "segmentation": [ + [ + 18.000000000000004, + 102.99999999999999, + 108.0, + 102.99999999999999, + 108.0, + 217.0, + 18.000000000000004, + 217.0 + ] + ], + "area": 10260.000000000002, + "bbox": [ + 18.000000000000004, + 102.99999999999999, + 90.0, + 114.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 398, + "image_id": 288, + "category_id": 1, + "segmentation": [ + [ + 304.0, + 74.99999999999999, + 408.0, + 74.99999999999999, + 408.0, + 205.0, + 304.0, + 205.0 + ] + ], + "area": 13520.0, + "bbox": [ + 304.0, + 74.99999999999999, + 104.00000000000001, + 130.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 399, + "image_id": 289, + "category_id": 1, + "segmentation": [ + [ + 289.0, + 132.99999999999997, + 410.0, + 132.99999999999997, + 410.0, + 264.99999999999994, + 289.0, + 264.99999999999994 + ] + ], + "area": 15971.999999999996, + "bbox": [ + 289.0, + 132.99999999999997, + 121.00000000000001, + 132.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 400, + "image_id": 290, + "category_id": 1, + "segmentation": [ + [ + 277.0, + 88.0, + 504.0, + 88.0, + 504.0, + 384.99999999999994, + 277.0, + 384.99999999999994 + ] + ], + "area": 67418.99999999999, + "bbox": [ + 277.0, + 88.0, + 227.0, + 296.99999999999994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 401, + "image_id": 291, + "category_id": 1, + "segmentation": [ + [ + 534.0, + 113.00000000000003, + 811.0, + 113.00000000000003, + 811.0, + 466.0, + 534.0, + 466.0 + ] + ], + "area": 97781.0, + "bbox": [ + 534.0, + 113.00000000000003, + 277.0, + 353.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 402, + "image_id": 291, + "category_id": 1, + "segmentation": [ + [ + 105.0, + 79.00000000000001, + 348.0, + 79.00000000000001, + 348.0, + 383.0, + 105.0, + 383.0 + ] + ], + "area": 73872.0, + "bbox": [ + 105.0, + 79.00000000000001, + 243.0, + 304.00000000000006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 403, + "image_id": 292, + "category_id": 1, + "segmentation": [ + [ + 143.0, + 8.000000000000014, + 854.0, + 8.000000000000014, + 854.0, + 639.0, + 143.0, + 639.0 + ] + ], + "area": 448641.0, + "bbox": [ + 143.0, + 8.000000000000014, + 711.0, + 631.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 404, + "image_id": 293, + "category_id": 1, + "segmentation": [ + [ + 54.99999999999999, + 53.99999999999999, + 188.0, + 53.99999999999999, + 188.0, + 219.0, + 54.99999999999999, + 219.0 + ] + ], + "area": 21945.0, + "bbox": [ + 54.99999999999999, + 53.99999999999999, + 133.0, + 165.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 405, + "image_id": 293, + "category_id": 1, + "segmentation": [ + [ + 372.0, + 50.0, + 491.0, + 50.0, + 491.0, + 203.0, + 372.0, + 203.0 + ] + ], + "area": 18207.0, + "bbox": [ + 372.0, + 50.0, + 119.00000000000001, + 153.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 406, + "image_id": 294, + "category_id": 1, + "segmentation": [ + [ + 204.0, + 65.99999999999999, + 386.0, + 65.99999999999999, + 386.0, + 287.0, + 204.0, + 287.0 + ] + ], + "area": 40222.0, + "bbox": [ + 204.0, + 65.99999999999999, + 182.0, + 221.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 407, + "image_id": 295, + "category_id": 1, + "segmentation": [ + [ + 262.0, + 166.0, + 825.0, + 166.0, + 825.0, + 888.0, + 262.0, + 888.0 + ] + ], + "area": 406486.0, + "bbox": [ + 262.0, + 166.0, + 563.0, + 722.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 408, + "image_id": 296, + "category_id": 1, + "segmentation": [ + [ + 426.0, + 48.99999999999999, + 750.0, + 48.99999999999999, + 750.0, + 429.0, + 426.0, + 429.0 + ] + ], + "area": 123120.0, + "bbox": [ + 426.0, + 48.99999999999999, + 324.0, + 380.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 409, + "image_id": 297, + "category_id": 1, + "segmentation": [ + [ + 327.0, + 21.000000000000004, + 530.0, + 21.000000000000004, + 530.0, + 286.0, + 327.0, + 286.0 + ] + ], + "area": 53795.0, + "bbox": [ + 327.0, + 21.000000000000004, + 203.0, + 264.99999999999994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 410, + "image_id": 298, + "category_id": 1, + "segmentation": [ + [ + 308.00000000000006, + 133.0, + 416.0, + 133.0, + 416.0, + 262.0, + 308.00000000000006, + 262.0 + ] + ], + "area": 13931.999999999993, + "bbox": [ + 308.00000000000006, + 133.0, + 108.0, + 129.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 411, + "image_id": 299, + "category_id": 1, + "segmentation": [ + [ + 293.00000000000006, + 80.99999999999999, + 443.00000000000006, + 80.99999999999999, + 443.00000000000006, + 226.0, + 293.00000000000006, + 226.0 + ] + ], + "area": 21750.0, + "bbox": [ + 293.00000000000006, + 80.99999999999999, + 150.0, + 145.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 412, + "image_id": 300, + "category_id": 1, + "segmentation": [ + [ + 260.0, + 162.0, + 830.0, + 162.0, + 830.0, + 826.0, + 260.0, + 826.0 + ] + ], + "area": 378480.0, + "bbox": [ + 260.0, + 162.0, + 570.0, + 664.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 413, + "image_id": 301, + "category_id": 1, + "segmentation": [ + [ + 214.0, + 5.999999999999995, + 316.0, + 5.999999999999995, + 316.0, + 151.99999999999997, + 214.0, + 151.99999999999997 + ] + ], + "area": 14891.999999999996, + "bbox": [ + 214.0, + 5.999999999999995, + 102.0, + 146.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 414, + "image_id": 301, + "category_id": 1, + "segmentation": [ + [ + 313.0, + 97.0, + 391.0, + 97.0, + 391.0, + 212.99999999999997, + 313.0, + 212.99999999999997 + ] + ], + "area": 9047.999999999998, + "bbox": [ + 313.0, + 97.0, + 78.0, + 115.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 415, + "image_id": 301, + "category_id": 1, + "segmentation": [ + [ + 507.0, + 102.99999999999999, + 582.0, + 102.99999999999999, + 582.0, + 220.0, + 507.0, + 220.0 + ] + ], + "area": 8775.000000000002, + "bbox": [ + 507.0, + 102.99999999999999, + 75.0, + 117.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 416, + "image_id": 301, + "category_id": 1, + "segmentation": [ + [ + 641.0, + 46.0, + 738.0, + 46.0, + 738.0, + 182.0, + 641.0, + 182.0 + ] + ], + "area": 13192.0, + "bbox": [ + 641.0, + 46.0, + 97.0, + 136.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 417, + "image_id": 301, + "category_id": 1, + "segmentation": [ + [ + 760.0, + 43.00000000000001, + 872.0, + 43.00000000000001, + 872.0, + 191.0, + 760.0, + 191.0 + ] + ], + "area": 16576.0, + "bbox": [ + 760.0, + 43.00000000000001, + 112.0, + 148.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 418, + "image_id": 302, + "category_id": 1, + "segmentation": [ + [ + 142.00000000000003, + 26.0, + 241.0, + 26.0, + 241.0, + 147.99999999999997, + 142.00000000000003, + 147.99999999999997 + ] + ], + "area": 12077.999999999995, + "bbox": [ + 142.00000000000003, + 26.0, + 99.0, + 121.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 419, + "image_id": 303, + "category_id": 1, + "segmentation": [ + [ + 268.00000000000006, + 158.0, + 398.00000000000006, + 158.0, + 398.00000000000006, + 290.00000000000006, + 268.00000000000006, + 290.00000000000006 + ] + ], + "area": 17160.000000000007, + "bbox": [ + 268.00000000000006, + 158.0, + 130.0, + 132.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 420, + "image_id": 304, + "category_id": 1, + "segmentation": [ + [ + 289.00000000000006, + 122.99999999999999, + 422.0, + 122.99999999999999, + 422.0, + 288.0, + 289.00000000000006, + 288.0 + ] + ], + "area": 21944.99999999999, + "bbox": [ + 289.00000000000006, + 122.99999999999999, + 133.0, + 165.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 421, + "image_id": 305, + "category_id": 1, + "segmentation": [ + [ + 406.0, + 67.00000000000001, + 648.0, + 67.00000000000001, + 648.0, + 384.00000000000006, + 406.0, + 384.00000000000006 + ] + ], + "area": 76714.00000000001, + "bbox": [ + 406.0, + 67.00000000000001, + 242.0, + 317.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 422, + "image_id": 306, + "category_id": 1, + "segmentation": [ + [ + 168.0, + 123.0, + 348.0, + 123.0, + 348.0, + 334.0, + 168.0, + 334.0 + ] + ], + "area": 37980.0, + "bbox": [ + 168.0, + 123.0, + 180.0, + 211.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 423, + "image_id": 306, + "category_id": 1, + "segmentation": [ + [ + 497.0, + 203.99999999999997, + 654.0, + 203.99999999999997, + 654.0, + 396.0, + 497.0, + 396.0 + ] + ], + "area": 30144.000000000004, + "bbox": [ + 497.0, + 203.99999999999997, + 157.0, + 192.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 424, + "image_id": 306, + "category_id": 1, + "segmentation": [ + [ + 817.0, + 72.00000000000001, + 933.0, + 72.00000000000001, + 933.0, + 196.0, + 817.0, + 196.0 + ] + ], + "area": 14383.999999999998, + "bbox": [ + 817.0, + 72.00000000000001, + 116.0, + 124.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 425, + "image_id": 307, + "category_id": 1, + "segmentation": [ + [ + 389.0, + 42.99999999999997, + 704.0, + 42.99999999999997, + 704.0, + 488.99999999999994, + 389.0, + 488.99999999999994 + ] + ], + "area": 140490.0, + "bbox": [ + 389.0, + 42.99999999999997, + 315.0, + 446.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 426, + "image_id": 308, + "category_id": 1, + "segmentation": [ + [ + 272.0, + 170.00000000000003, + 401.0, + 170.00000000000003, + 401.0, + 330.0, + 272.0, + 330.0 + ] + ], + "area": 20639.999999999996, + "bbox": [ + 272.0, + 170.00000000000003, + 129.0, + 160.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 427, + "image_id": 309, + "category_id": 1, + "segmentation": [ + [ + 262.0, + 129.0, + 394.00000000000006, + 129.0, + 394.00000000000006, + 276.0, + 262.0, + 276.0 + ] + ], + "area": 19404.000000000007, + "bbox": [ + 262.0, + 129.0, + 132.0, + 147.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 428, + "image_id": 310, + "category_id": 1, + "segmentation": [ + [ + 139.0, + 202.0, + 860.0, + 202.0, + 860.0, + 1120.0, + 139.0, + 1120.0 + ] + ], + "area": 661878.0, + "bbox": [ + 139.0, + 202.0, + 721.0, + 918.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 429, + "image_id": 311, + "category_id": 1, + "segmentation": [ + [ + 581.0, + 91.0, + 708.0, + 91.0, + 708.0, + 235.0, + 581.0, + 235.0 + ] + ], + "area": 18288.0, + "bbox": [ + 581.0, + 91.0, + 127.0, + 144.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 430, + "image_id": 312, + "category_id": 1, + "segmentation": [ + [ + 262.0, + 85.0, + 389.00000000000006, + 85.0, + 389.00000000000006, + 225.0, + 262.0, + 225.0 + ] + ], + "area": 17780.000000000007, + "bbox": [ + 262.0, + 85.0, + 127.00000000000001, + 140.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 431, + "image_id": 313, + "category_id": 1, + "segmentation": [ + [ + 171.0, + 71.00000000000001, + 527.0, + 71.00000000000001, + 527.0, + 441.0, + 171.0, + 441.0 + ] + ], + "area": 131720.0, + "bbox": [ + 171.0, + 71.00000000000001, + 356.0, + 369.99999999999994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 432, + "image_id": 314, + "category_id": 1, + "segmentation": [ + [ + 360.00000000000006, + 135.0, + 483.00000000000006, + 135.0, + 483.00000000000006, + 269.0, + 360.00000000000006, + 269.0 + ] + ], + "area": 16482.0, + "bbox": [ + 360.00000000000006, + 135.0, + 123.0, + 134.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 433, + "image_id": 315, + "category_id": 1, + "segmentation": [ + [ + 303.0, + 124.00000000000003, + 739.0, + 124.00000000000003, + 739.0, + 704.0, + 303.0, + 704.0 + ] + ], + "area": 252880.0, + "bbox": [ + 303.0, + 124.00000000000003, + 436.0, + 580.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 434, + "image_id": 316, + "category_id": 1, + "segmentation": [ + [ + 327.0, + 61.0, + 432.0, + 61.0, + 432.0, + 176.00000000000003, + 327.0, + 176.00000000000003 + ] + ], + "area": 12075.000000000004, + "bbox": [ + 327.0, + 61.0, + 105.0, + 115.00000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 435, + "image_id": 316, + "category_id": 1, + "segmentation": [ + [ + 549.0, + 61.000000000000014, + 686.0, + 61.000000000000014, + 686.0, + 222.0, + 549.0, + 222.0 + ] + ], + "area": 22057.0, + "bbox": [ + 549.0, + 61.000000000000014, + 137.0, + 161.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 436, + "image_id": 317, + "category_id": 1, + "segmentation": [ + [ + 253.00000000000006, + 109.0, + 398.00000000000006, + 109.0, + 398.00000000000006, + 283.0, + 253.00000000000006, + 283.0 + ] + ], + "area": 25230.0, + "bbox": [ + 253.00000000000006, + 109.0, + 145.0, + 174.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 437, + "image_id": 318, + "category_id": 1, + "segmentation": [ + [ + 133.0, + 520.0, + 405.0, + 520.0, + 405.0, + 811.9999999999999, + 133.0, + 811.9999999999999 + ] + ], + "area": 79423.99999999997, + "bbox": [ + 133.0, + 520.0, + 272.0, + 292.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 438, + "image_id": 318, + "category_id": 1, + "segmentation": [ + [ + 484.0, + 189.00000000000003, + 804.0, + 189.00000000000003, + 804.0, + 512.0, + 484.0, + 512.0 + ] + ], + "area": 103360.0, + "bbox": [ + 484.0, + 189.00000000000003, + 320.0, + 323.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 439, + "image_id": 319, + "category_id": 1, + "segmentation": [ + [ + 94.0, + 84.0, + 238.0, + 84.0, + 238.0, + 248.99999999999997, + 94.0, + 248.99999999999997 + ] + ], + "area": 23759.999999999996, + "bbox": [ + 94.0, + 84.0, + 144.0, + 165.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 440, + "image_id": 319, + "category_id": 1, + "segmentation": [ + [ + 351.0, + 187.99999999999997, + 486.0, + 187.99999999999997, + 486.0, + 342.99999999999994, + 351.0, + 342.99999999999994 + ] + ], + "area": 20924.999999999996, + "bbox": [ + 351.0, + 187.99999999999997, + 135.0, + 155.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 441, + "image_id": 319, + "category_id": 1, + "segmentation": [ + [ + 668.0, + 12.000000000000007, + 823.0, + 12.000000000000007, + 823.0, + 194.0, + 668.0, + 194.0 + ] + ], + "area": 28210.0, + "bbox": [ + 668.0, + 12.000000000000007, + 155.0, + 182.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 442, + "image_id": 320, + "category_id": 1, + "segmentation": [ + [ + 282.0, + 117.00000000000001, + 618.0, + 117.00000000000001, + 618.0, + 506.0, + 282.0, + 506.0 + ] + ], + "area": 130704.0, + "bbox": [ + 282.0, + 117.00000000000001, + 336.0, + 388.99999999999994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 443, + "image_id": 321, + "category_id": 1, + "segmentation": [ + [ + 333.00000000000006, + 146.0, + 456.0, + 146.0, + 456.0, + 299.0, + 333.00000000000006, + 299.0 + ] + ], + "area": 18818.999999999993, + "bbox": [ + 333.00000000000006, + 146.0, + 123.0, + 153.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 444, + "image_id": 322, + "category_id": 1, + "segmentation": [ + [ + 280.0, + 125.00000000000001, + 390.0, + 125.00000000000001, + 390.0, + 245.99999999999997, + 280.0, + 245.99999999999997 + ] + ], + "area": 13309.999999999995, + "bbox": [ + 280.0, + 125.00000000000001, + 110.0, + 121.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 445, + "image_id": 323, + "category_id": 1, + "segmentation": [ + [ + 67.0, + 39.000000000000014, + 220.0, + 39.000000000000014, + 220.0, + 240.99999999999997, + 67.0, + 240.99999999999997 + ] + ], + "area": 30905.999999999993, + "bbox": [ + 67.0, + 39.000000000000014, + 153.0, + 201.99999999999997 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 446, + "image_id": 323, + "category_id": 1, + "segmentation": [ + [ + 606.0, + 46.00000000000001, + 728.0, + 46.00000000000001, + 728.0, + 190.0, + 606.0, + 190.0 + ] + ], + "area": 17568.0, + "bbox": [ + 606.0, + 46.00000000000001, + 122.0, + 144.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 447, + "image_id": 323, + "category_id": 1, + "segmentation": [ + [ + 780.0, + 80.99999999999999, + 925.0, + 80.99999999999999, + 925.0, + 261.99999999999994, + 780.0, + 261.99999999999994 + ] + ], + "area": 26244.999999999993, + "bbox": [ + 780.0, + 80.99999999999999, + 145.0, + 181.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 448, + "image_id": 324, + "category_id": 1, + "segmentation": [ + [ + 139.0, + 165.0, + 209.00000000000003, + 165.0, + 209.00000000000003, + 246.99999999999997, + 139.0, + 246.99999999999997 + ] + ], + "area": 5740.0, + "bbox": [ + 139.0, + 165.0, + 70.0, + 82.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 449, + "image_id": 324, + "category_id": 1, + "segmentation": [ + [ + 206.00000000000003, + 170.0, + 249.0, + 170.0, + 249.0, + 237.0, + 206.00000000000003, + 237.0 + ] + ], + "area": 2880.999999999998, + "bbox": [ + 206.00000000000003, + 170.0, + 43.0, + 67.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 450, + "image_id": 324, + "category_id": 1, + "segmentation": [ + [ + 260.0, + 161.99999999999997, + 303.00000000000006, + 161.99999999999997, + 303.00000000000006, + 232.99999999999997, + 260.0, + 232.99999999999997 + ] + ], + "area": 3053.000000000004, + "bbox": [ + 260.0, + 161.99999999999997, + 43.0, + 71.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 451, + "image_id": 324, + "category_id": 1, + "segmentation": [ + [ + 283.0, + 116.0, + 341.0, + 116.0, + 341.0, + 189.0, + 283.0, + 189.0 + ] + ], + "area": 4234.0, + "bbox": [ + 283.0, + 116.0, + 58.0, + 73.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 452, + "image_id": 325, + "category_id": 1, + "segmentation": [ + [ + 312.0, + 88.0, + 432.0, + 88.0, + 432.0, + 229.0, + 312.0, + 229.0 + ] + ], + "area": 16920.0, + "bbox": [ + 312.0, + 88.0, + 120.0, + 141.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 453, + "image_id": 326, + "category_id": 1, + "segmentation": [ + [ + 99.0, + 36.0, + 299.0, + 36.0, + 299.0, + 258.0, + 99.0, + 258.0 + ] + ], + "area": 44400.0, + "bbox": [ + 99.0, + 36.0, + 200.0, + 222.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 454, + "image_id": 326, + "category_id": 1, + "segmentation": [ + [ + 306.0, + 117.99999999999999, + 531.0, + 117.99999999999999, + 531.0, + 475.0, + 306.0, + 475.0 + ] + ], + "area": 80325.0, + "bbox": [ + 306.0, + 117.99999999999999, + 225.0, + 357.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 455, + "image_id": 326, + "category_id": 1, + "segmentation": [ + [ + 525.0, + 150.0, + 723.0, + 150.0, + 723.0, + 537.0, + 525.0, + 537.0 + ] + ], + "area": 76626.0, + "bbox": [ + 525.0, + 150.0, + 198.0, + 387.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 456, + "image_id": 326, + "category_id": 1, + "segmentation": [ + [ + 720.0, + 54.99999999999998, + 978.0, + 54.99999999999998, + 978.0, + 457.00000000000006, + 720.0, + 457.00000000000006 + ] + ], + "area": 103716.00000000001, + "bbox": [ + 720.0, + 54.99999999999998, + 258.0, + 402.00000000000006 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 457, + "image_id": 327, + "category_id": 1, + "segmentation": [ + [ + 185.0, + 2.999999999999986, + 353.0, + 2.999999999999986, + 353.0, + 192.99999999999997, + 185.0, + 192.99999999999997 + ] + ], + "area": 31920.0, + "bbox": [ + 185.0, + 2.999999999999986, + 168.0, + 190.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 458, + "image_id": 327, + "category_id": 1, + "segmentation": [ + [ + 616.0, + 85.0, + 755.0, + 85.0, + 755.0, + 242.0, + 616.0, + 242.0 + ] + ], + "area": 21823.0, + "bbox": [ + 616.0, + 85.0, + 139.0, + 157.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 459, + "image_id": 328, + "category_id": 1, + "segmentation": [ + [ + 94.0, + 63.99999999999999, + 141.0, + 63.99999999999999, + 141.0, + 128.0, + 94.0, + 128.0 + ] + ], + "area": 3008.0, + "bbox": [ + 94.0, + 63.99999999999999, + 47.0, + 64.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 460, + "image_id": 328, + "category_id": 1, + "segmentation": [ + [ + 169.0, + 82.99999999999999, + 216.0, + 82.99999999999999, + 216.0, + 142.0, + 169.0, + 142.0 + ] + ], + "area": 2773.0000000000005, + "bbox": [ + 169.0, + 82.99999999999999, + 47.0, + 59.00000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 461, + "image_id": 328, + "category_id": 1, + "segmentation": [ + [ + 233.0, + 73.0, + 283.00000000000006, + 73.0, + 283.00000000000006, + 137.0, + 233.0, + 137.0 + ] + ], + "area": 3200.0000000000036, + "bbox": [ + 233.0, + 73.0, + 50.0, + 64.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 462, + "image_id": 328, + "category_id": 1, + "segmentation": [ + [ + 294.0, + 42.0, + 350.00000000000006, + 42.0, + 350.00000000000006, + 109.0, + 294.0, + 109.0 + ] + ], + "area": 3752.0000000000036, + "bbox": [ + 294.0, + 42.0, + 56.0, + 67.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 463, + "image_id": 328, + "category_id": 1, + "segmentation": [ + [ + 350.0, + 23.000000000000004, + 402.0, + 23.000000000000004, + 402.0, + 95.00000000000001, + 350.0, + 95.00000000000001 + ] + ], + "area": 3744.000000000001, + "bbox": [ + 350.0, + 23.000000000000004, + 52.00000000000001, + 72.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 464, + "image_id": 329, + "category_id": 1, + "segmentation": [ + [ + 267.0, + 157.99999999999997, + 403.0, + 157.99999999999997, + 403.0, + 323.0, + 267.0, + 323.0 + ] + ], + "area": 22440.000000000004, + "bbox": [ + 267.0, + 157.99999999999997, + 136.0, + 165.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 465, + "image_id": 330, + "category_id": 1, + "segmentation": [ + [ + 293.00000000000006, + 138.0, + 418.00000000000006, + 138.0, + 418.00000000000006, + 267.0, + 293.00000000000006, + 267.0 + ] + ], + "area": 16125.0, + "bbox": [ + 293.00000000000006, + 138.0, + 125.0, + 129.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 466, + "image_id": 331, + "category_id": 1, + "segmentation": [ + [ + 222.00000000000003, + 116.0, + 367.0, + 116.0, + 367.0, + 261.0, + 222.00000000000003, + 261.0 + ] + ], + "area": 21024.999999999996, + "bbox": [ + 222.00000000000003, + 116.0, + 145.0, + 145.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 467, + "image_id": 332, + "category_id": 1, + "segmentation": [ + [ + 353.0, + 45.999999999999986, + 653.0, + 45.999999999999986, + 653.0, + 408.0, + 353.0, + 408.0 + ] + ], + "area": 108600.0, + "bbox": [ + 353.0, + 45.999999999999986, + 300.0, + 362.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 468, + "image_id": 333, + "category_id": 1, + "segmentation": [ + [ + 391.0, + 178.0, + 711.0, + 178.0, + 711.0, + 530.0, + 391.0, + 530.0 + ] + ], + "area": 112640.0, + "bbox": [ + 391.0, + 178.0, + 320.0, + 352.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 469, + "image_id": 334, + "category_id": 1, + "segmentation": [ + [ + 205.0, + 18.999999999999993, + 306.0, + 18.999999999999993, + 306.0, + 132.0, + 205.0, + 132.0 + ] + ], + "area": 11413.0, + "bbox": [ + 205.0, + 18.999999999999993, + 101.0, + 113.00000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 470, + "image_id": 334, + "category_id": 1, + "segmentation": [ + [ + 617.0, + 44.99999999999998, + 900.0, + 44.99999999999998, + 900.0, + 361.0, + 617.0, + 361.0 + ] + ], + "area": 89428.0, + "bbox": [ + 617.0, + 44.99999999999998, + 283.0, + 316.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 471, + "image_id": 335, + "category_id": 1, + "segmentation": [ + [ + 205.0, + 178.0, + 743.0, + 178.0, + 743.0, + 935.9999999999999, + 205.0, + 935.9999999999999 + ] + ], + "area": 407803.99999999994, + "bbox": [ + 205.0, + 178.0, + 538.0, + 757.9999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 472, + "image_id": 336, + "category_id": 1, + "segmentation": [ + [ + 251.0, + 88.0, + 371.0, + 88.0, + 371.0, + 230.99999999999997, + 251.0, + 230.99999999999997 + ] + ], + "area": 17159.999999999996, + "bbox": [ + 251.0, + 88.0, + 120.0, + 143.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 473, + "image_id": 337, + "category_id": 1, + "segmentation": [ + [ + 291.0, + 88.99999999999999, + 434.0, + 88.99999999999999, + 434.0, + 245.99999999999997, + 291.0, + 245.99999999999997 + ] + ], + "area": 22451.0, + "bbox": [ + 291.0, + 88.99999999999999, + 143.0, + 157.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 474, + "image_id": 338, + "category_id": 1, + "segmentation": [ + [ + 407.0, + 42.00000000000001, + 754.0, + 42.00000000000001, + 754.0, + 438.0, + 407.0, + 438.0 + ] + ], + "area": 137412.0, + "bbox": [ + 407.0, + 42.00000000000001, + 347.0, + 396.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 475, + "image_id": 339, + "category_id": 1, + "segmentation": [ + [ + 246.0, + 45.99999999999999, + 592.0, + 45.99999999999999, + 592.0, + 430.99999999999994, + 246.0, + 430.99999999999994 + ] + ], + "area": 133209.99999999997, + "bbox": [ + 246.0, + 45.99999999999999, + 346.0, + 385.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 476, + "image_id": 340, + "category_id": 1, + "segmentation": [ + [ + 234.0, + 86.00000000000006, + 788.0, + 86.00000000000006, + 788.0, + 825.0, + 234.0, + 825.0 + ] + ], + "area": 409406.0, + "bbox": [ + 234.0, + 86.00000000000006, + 554.0, + 739.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 477, + "image_id": 341, + "category_id": 1, + "segmentation": [ + [ + 290.00000000000006, + 106.0, + 414.00000000000006, + 106.0, + 414.00000000000006, + 244.0, + 290.00000000000006, + 244.0 + ] + ], + "area": 17112.0, + "bbox": [ + 290.00000000000006, + 106.0, + 124.0, + 138.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 478, + "image_id": 342, + "category_id": 1, + "segmentation": [ + [ + 309.0, + 210.00000000000003, + 711.0, + 210.00000000000003, + 711.0, + 738.0, + 309.0, + 738.0 + ] + ], + "area": 212256.0, + "bbox": [ + 309.0, + 210.00000000000003, + 402.0, + 528.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 479, + "image_id": 343, + "category_id": 1, + "segmentation": [ + [ + 273.99999999999994, + 58.0, + 311.0, + 58.0, + 311.0, + 104.0, + 273.99999999999994, + 104.0 + ] + ], + "area": 1702.0000000000027, + "bbox": [ + 273.99999999999994, + 58.0, + 37.0, + 46.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 480, + "image_id": 344, + "category_id": 1, + "segmentation": [ + [ + 445.0, + 123.99999999999999, + 717.0, + 123.99999999999999, + 717.0, + 454.00000000000006, + 445.0, + 454.00000000000006 + ] + ], + "area": 89760.00000000001, + "bbox": [ + 445.0, + 123.99999999999999, + 272.0, + 330.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 481, + "image_id": 345, + "category_id": 1, + "segmentation": [ + [ + 228.0, + 140.0, + 372.0, + 140.0, + 372.0, + 306.0, + 228.0, + 306.0 + ] + ], + "area": 23904.0, + "bbox": [ + 228.0, + 140.0, + 144.0, + 166.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 482, + "image_id": 346, + "category_id": 1, + "segmentation": [ + [ + 168.00000000000003, + 41.00000000000001, + 249.0, + 41.00000000000001, + 249.0, + 131.0, + 168.00000000000003, + 131.0 + ] + ], + "area": 7289.999999999997, + "bbox": [ + 168.00000000000003, + 41.00000000000001, + 81.0, + 90.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 483, + "image_id": 347, + "category_id": 1, + "segmentation": [ + [ + 275.0, + 105.0, + 383.0, + 105.0, + 383.0, + 220.00000000000003, + 275.0, + 220.00000000000003 + ] + ], + "area": 12420.000000000004, + "bbox": [ + 275.0, + 105.0, + 108.0, + 115.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 484, + "image_id": 348, + "category_id": 1, + "segmentation": [ + [ + 172.0, + 92.00000000000001, + 668.0, + 92.00000000000001, + 668.0, + 757.0, + 172.0, + 757.0 + ] + ], + "area": 329840.0, + "bbox": [ + 172.0, + 92.00000000000001, + 496.0, + 664.9999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 485, + "image_id": 349, + "category_id": 1, + "segmentation": [ + [ + 251.0, + 166.0, + 752.0, + 166.0, + 752.0, + 749.0000000000001, + 251.0, + 749.0000000000001 + ] + ], + "area": 292083.00000000006, + "bbox": [ + 251.0, + 166.0, + 501.0, + 583.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 486, + "image_id": 350, + "category_id": 1, + "segmentation": [ + [ + 306.0, + 29.0, + 433.0, + 29.0, + 433.0, + 190.0, + 306.0, + 190.0 + ] + ], + "area": 20447.0, + "bbox": [ + 306.0, + 29.0, + 127.0, + 161.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 487, + "image_id": 351, + "category_id": 1, + "segmentation": [ + [ + 248.00000000000006, + 175.0, + 393.00000000000006, + 175.0, + 393.00000000000006, + 328.0, + 248.00000000000006, + 328.0 + ] + ], + "area": 22185.0, + "bbox": [ + 248.00000000000006, + 175.0, + 145.0, + 153.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 488, + "image_id": 352, + "category_id": 1, + "segmentation": [ + [ + 200.0, + 0.9999999999999769, + 743.0, + 0.9999999999999769, + 743.0, + 706.0, + 200.0, + 706.0 + ] + ], + "area": 382815.0, + "bbox": [ + 200.0, + 0.9999999999999769, + 543.0, + 705.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 489, + "image_id": 353, + "category_id": 1, + "segmentation": [ + [ + 285.0, + 129.0, + 388.0, + 129.0, + 388.0, + 237.99999999999997, + 285.0, + 237.99999999999997 + ] + ], + "area": 11226.999999999996, + "bbox": [ + 285.0, + 129.0, + 103.0, + 109.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 490, + "image_id": 354, + "category_id": 1, + "segmentation": [ + [ + 228.0, + 135.00000000000006, + 864.0, + 135.00000000000006, + 864.0, + 988.0000000000001, + 228.0, + 988.0000000000001 + ] + ], + "area": 542508.0, + "bbox": [ + 228.0, + 135.00000000000006, + 636.0, + 852.9999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 491, + "image_id": 355, + "category_id": 1, + "segmentation": [ + [ + 200.0, + 117.00000000000001, + 772.0, + 117.00000000000001, + 772.0, + 877.9999999999999, + 200.0, + 877.9999999999999 + ] + ], + "area": 435291.99999999994, + "bbox": [ + 200.0, + 117.00000000000001, + 572.0, + 761.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 492, + "image_id": 356, + "category_id": 1, + "segmentation": [ + [ + 80.0, + 34.99999999999999, + 280.0, + 34.99999999999999, + 280.0, + 242.00000000000003, + 80.0, + 242.00000000000003 + ] + ], + "area": 41400.00000000001, + "bbox": [ + 80.0, + 34.99999999999999, + 200.0, + 207.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 493, + "image_id": 356, + "category_id": 1, + "segmentation": [ + [ + 669.0, + 72.00000000000001, + 839.0, + 72.00000000000001, + 839.0, + 273.0, + 669.0, + 273.0 + ] + ], + "area": 34170.0, + "bbox": [ + 669.0, + 72.00000000000001, + 170.0, + 201.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 494, + "image_id": 357, + "category_id": 1, + "segmentation": [ + [ + 284.0, + 115.99999999999999, + 408.00000000000006, + 115.99999999999999, + 408.00000000000006, + 251.99999999999994, + 284.0, + 251.99999999999994 + ] + ], + "area": 16864.0, + "bbox": [ + 284.0, + 115.99999999999999, + 124.0, + 136.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 495, + "image_id": 358, + "category_id": 1, + "segmentation": [ + [ + 239.0, + 90.99999999999994, + 849.0, + 90.99999999999994, + 849.0, + 832.0, + 239.0, + 832.0 + ] + ], + "area": 452010.0, + "bbox": [ + 239.0, + 90.99999999999994, + 610.0, + 741.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 496, + "image_id": 359, + "category_id": 1, + "segmentation": [ + [ + 269.0, + 67.00000000000003, + 739.0, + 67.00000000000003, + 739.0, + 649.0, + 269.0, + 649.0 + ] + ], + "area": 273540.0, + "bbox": [ + 269.0, + 67.00000000000003, + 470.0, + 582.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 497, + "image_id": 360, + "category_id": 1, + "segmentation": [ + [ + 200.99999999999997, + 94.99999999999999, + 388.0, + 94.99999999999999, + 388.0, + 339.0, + 200.99999999999997, + 339.0 + ] + ], + "area": 45628.00000000001, + "bbox": [ + 200.99999999999997, + 94.99999999999999, + 187.0, + 244.00000000000003 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 498, + "image_id": 360, + "category_id": 1, + "segmentation": [ + [ + 586.0, + 20.0, + 818.0, + 20.0, + 818.0, + 295.0, + 586.0, + 295.0 + ] + ], + "area": 63800.0, + "bbox": [ + 586.0, + 20.0, + 232.0, + 275.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 499, + "image_id": 361, + "category_id": 1, + "segmentation": [ + [ + 231.0, + 79.00000000000003, + 662.0, + 79.00000000000003, + 662.0, + 601.0, + 231.0, + 601.0 + ] + ], + "area": 224982.0, + "bbox": [ + 231.0, + 79.00000000000003, + 431.0, + 522.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 500, + "image_id": 362, + "category_id": 1, + "segmentation": [ + [ + 306.00000000000006, + 192.99999999999997, + 410.00000000000006, + 192.99999999999997, + 410.00000000000006, + 309.99999999999994, + 306.00000000000006, + 309.99999999999994 + ] + ], + "area": 12167.999999999996, + "bbox": [ + 306.00000000000006, + 192.99999999999997, + 104.0, + 117.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 501, + "image_id": 363, + "category_id": 1, + "segmentation": [ + [ + 362.0, + 150.99999999999994, + 679.0, + 150.99999999999994, + 679.0, + 568.0, + 362.0, + 568.0 + ] + ], + "area": 132189.00000000003, + "bbox": [ + 362.0, + 150.99999999999994, + 317.0, + 417.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 502, + "image_id": 363, + "category_id": 1, + "segmentation": [ + [ + 3.0, + 300.0, + 214.0, + 300.0, + 214.0, + 556.0, + 3.0, + 556.0 + ] + ], + "area": 54016.0, + "bbox": [ + 3.0, + 300.0, + 211.0, + 256.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 503, + "image_id": 364, + "category_id": 1, + "segmentation": [ + [ + 125.00000000000001, + 22.999999999999993, + 289.0, + 22.999999999999993, + 289.0, + 219.0, + 125.00000000000001, + 219.0 + ] + ], + "area": 32144.0, + "bbox": [ + 125.00000000000001, + 22.999999999999993, + 164.00000000000003, + 196.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 504, + "image_id": 365, + "category_id": 1, + "segmentation": [ + [ + 297.0, + 146.0, + 635.0, + 146.0, + 635.0, + 498.99999999999994, + 297.0, + 498.99999999999994 + ] + ], + "area": 119313.99999999999, + "bbox": [ + 297.0, + 146.0, + 338.0, + 353.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 505, + "image_id": 366, + "category_id": 1, + "segmentation": [ + [ + 384.99999999999994, + 63.999999999999986, + 561.0, + 63.999999999999986, + 561.0, + 304.0, + 384.99999999999994, + 304.0 + ] + ], + "area": 42240.000000000015, + "bbox": [ + 384.99999999999994, + 63.999999999999986, + 176.0, + 240.00000000000003 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 506, + "image_id": 367, + "category_id": 1, + "segmentation": [ + [ + 329.00000000000006, + 126.0, + 447.0, + 126.0, + 447.0, + 262.0, + 329.00000000000006, + 262.0 + ] + ], + "area": 16047.999999999993, + "bbox": [ + 329.00000000000006, + 126.0, + 118.0, + 136.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 507, + "image_id": 368, + "category_id": 1, + "segmentation": [ + [ + 270.0, + 31.0, + 494.0, + 31.0, + 494.0, + 254.99999999999994, + 270.0, + 254.99999999999994 + ] + ], + "area": 50175.999999999985, + "bbox": [ + 270.0, + 31.0, + 224.0, + 223.99999999999997 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 508, + "image_id": 369, + "category_id": 1, + "segmentation": [ + [ + 278.0, + 166.0, + 394.00000000000006, + 166.0, + 394.00000000000006, + 280.0, + 278.0, + 280.0 + ] + ], + "area": 13224.000000000007, + "bbox": [ + 278.0, + 166.0, + 116.00000000000001, + 114.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 509, + "image_id": 370, + "category_id": 1, + "segmentation": [ + [ + 77.0, + 156.0, + 241.0, + 156.0, + 241.0, + 348.0, + 77.0, + 348.0 + ] + ], + "area": 31488.0, + "bbox": [ + 77.0, + 156.0, + 164.0, + 192.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 510, + "image_id": 370, + "category_id": 1, + "segmentation": [ + [ + 267.0, + 192.0, + 450.0, + 192.0, + 450.0, + 361.0, + 267.0, + 361.0 + ] + ], + "area": 30927.0, + "bbox": [ + 267.0, + 192.0, + 183.0, + 168.99999999999997 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 511, + "image_id": 370, + "category_id": 1, + "segmentation": [ + [ + 637.0, + 308.0, + 761.0, + 308.0, + 761.0, + 445.99999999999994, + 637.0, + 445.99999999999994 + ] + ], + "area": 17111.999999999993, + "bbox": [ + 637.0, + 308.0, + 124.0, + 138.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 512, + "image_id": 370, + "category_id": 1, + "segmentation": [ + [ + 769.0, + 98.99999999999999, + 941.0, + 98.99999999999999, + 941.0, + 274.0, + 769.0, + 274.0 + ] + ], + "area": 30100.0, + "bbox": [ + 769.0, + 98.99999999999999, + 172.0, + 175.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 513, + "image_id": 371, + "category_id": 1, + "segmentation": [ + [ + 167.0, + 37.00000000000001, + 345.0, + 37.00000000000001, + 345.0, + 262.0, + 167.0, + 262.0 + ] + ], + "area": 40050.0, + "bbox": [ + 167.0, + 37.00000000000001, + 178.0, + 225.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 514, + "image_id": 372, + "category_id": 1, + "segmentation": [ + [ + 258.0, + 198.0, + 365.0, + 198.0, + 365.0, + 338.0, + 258.0, + 338.0 + ] + ], + "area": 14980.0, + "bbox": [ + 258.0, + 198.0, + 107.00000000000001, + 140.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 515, + "image_id": 373, + "category_id": 1, + "segmentation": [ + [ + 148.0, + 127.0, + 185.0, + 127.0, + 185.0, + 179.0, + 148.0, + 179.0 + ] + ], + "area": 1924.0, + "bbox": [ + 148.0, + 127.0, + 37.0, + 52.00000000000001 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 516, + "image_id": 373, + "category_id": 1, + "segmentation": [ + [ + 95.0, + 197.0, + 126.99999999999999, + 197.0, + 126.99999999999999, + 234.0, + 95.0, + 234.0 + ] + ], + "area": 1183.9999999999995, + "bbox": [ + 95.0, + 197.0, + 32.0, + 37.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 517, + "image_id": 374, + "category_id": 1, + "segmentation": [ + [ + 356.0, + 47.99999999999998, + 675.0, + 47.99999999999998, + 675.0, + 452.0, + 356.0, + 452.0 + ] + ], + "area": 128876.0, + "bbox": [ + 356.0, + 47.99999999999998, + 319.0, + 404.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 518, + "image_id": 375, + "category_id": 1, + "segmentation": [ + [ + 265.0, + 15.0, + 816.0, + 15.0, + 816.0, + 697.0, + 265.0, + 697.0 + ] + ], + "area": 375782.0, + "bbox": [ + 265.0, + 15.0, + 551.0, + 682.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 519, + "image_id": 376, + "category_id": 1, + "segmentation": [ + [ + 227.99999999999997, + 96.0, + 392.0, + 96.0, + 392.0, + 286.0, + 227.99999999999997, + 286.0 + ] + ], + "area": 31160.000000000004, + "bbox": [ + 227.99999999999997, + 96.0, + 164.0, + 189.99999999999997 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 520, + "image_id": 377, + "category_id": 1, + "segmentation": [ + [ + 146.0, + 96.0, + 263.0, + 96.0, + 263.0, + 236.99999999999997, + 146.0, + 236.99999999999997 + ] + ], + "area": 16496.999999999996, + "bbox": [ + 146.0, + 96.0, + 117.0, + 140.99999999999997 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 521, + "image_id": 377, + "category_id": 1, + "segmentation": [ + [ + 355.0, + 166.0, + 495.0, + 166.0, + 495.0, + 305.99999999999994, + 355.0, + 305.99999999999994 + ] + ], + "area": 19599.999999999993, + "bbox": [ + 355.0, + 166.0, + 140.0, + 140.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 522, + "image_id": 377, + "category_id": 1, + "segmentation": [ + [ + 747.0, + 120.99999999999999, + 901.0, + 120.99999999999999, + 901.0, + 281.0, + 747.0, + 281.0 + ] + ], + "area": 24640.0, + "bbox": [ + 747.0, + 120.99999999999999, + 154.0, + 160.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 523, + "image_id": 378, + "category_id": 1, + "segmentation": [ + [ + 423.0, + 51.0, + 654.0, + 51.0, + 654.0, + 294.0, + 423.0, + 294.0 + ] + ], + "area": 56133.0, + "bbox": [ + 423.0, + 51.0, + 231.0, + 243.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 524, + "image_id": 379, + "category_id": 1, + "segmentation": [ + [ + 456.0, + 59.99999999999999, + 743.0, + 59.99999999999999, + 743.0, + 390.0, + 456.0, + 390.0 + ] + ], + "area": 94710.0, + "bbox": [ + 456.0, + 59.99999999999999, + 287.0, + 330.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 525, + "image_id": 380, + "category_id": 1, + "segmentation": [ + [ + 170.0, + 137.0, + 227.0, + 137.0, + 227.0, + 201.99999999999997, + 170.0, + 201.99999999999997 + ] + ], + "area": 3704.999999999998, + "bbox": [ + 170.0, + 137.0, + 57.0, + 65.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 526, + "image_id": 380, + "category_id": 1, + "segmentation": [ + [ + 316.0, + 123.0, + 375.00000000000006, + 123.0, + 375.00000000000006, + 199.0, + 316.0, + 199.0 + ] + ], + "area": 4484.000000000005, + "bbox": [ + 316.0, + 123.0, + 59.00000000000001, + 75.99999999999999 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 527, + "image_id": 381, + "category_id": 1, + "segmentation": [ + [ + 318.0, + 85.0, + 432.0, + 85.0, + 432.0, + 213.0, + 318.0, + 213.0 + ] + ], + "area": 14592.0, + "bbox": [ + 318.0, + 85.0, + 114.0, + 128.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 528, + "image_id": 382, + "category_id": 1, + "segmentation": [ + [ + 197.0, + 103.0, + 810.0, + 103.0, + 810.0, + 832.9999999999999, + 197.0, + 832.9999999999999 + ] + ], + "area": 447489.99999999994, + "bbox": [ + 197.0, + 103.0, + 613.0, + 730.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 529, + "image_id": 383, + "category_id": 1, + "segmentation": [ + [ + 274.0, + 112.0, + 408.00000000000006, + 112.0, + 408.00000000000006, + 279.0, + 274.0, + 279.0 + ] + ], + "area": 22378.00000000001, + "bbox": [ + 274.0, + 112.0, + 134.0, + 167.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 530, + "image_id": 384, + "category_id": 1, + "segmentation": [ + [ + 326.0, + 128.00000000000003, + 426.0, + 128.00000000000003, + 426.0, + 241.0, + 326.0, + 241.0 + ] + ], + "area": 11299.999999999996, + "bbox": [ + 326.0, + 128.00000000000003, + 100.0, + 113.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 531, + "image_id": 385, + "category_id": 1, + "segmentation": [ + [ + 383.0, + 120.0, + 924.0, + 120.0, + 924.0, + 874.9999999999999, + 383.0, + 874.9999999999999 + ] + ], + "area": 408454.99999999994, + "bbox": [ + 383.0, + 120.0, + 541.0, + 755.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 532, + "image_id": 386, + "category_id": 1, + "segmentation": [ + [ + 60.00000000000001, + 1.9999999999999951, + 179.00000000000003, + 1.9999999999999951, + 179.00000000000003, + 125.00000000000001, + 60.00000000000001, + 125.00000000000001 + ] + ], + "area": 14637.000000000005, + "bbox": [ + 60.00000000000001, + 1.9999999999999951, + 119.00000000000001, + 123.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 533, + "image_id": 387, + "category_id": 1, + "segmentation": [ + [ + 307.0, + 109.0, + 417.0, + 109.0, + 417.0, + 236.0, + 307.0, + 236.0 + ] + ], + "area": 13970.0, + "bbox": [ + 307.0, + 109.0, + 110.0, + 127.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 534, + "image_id": 388, + "category_id": 1, + "segmentation": [ + [ + 439.0, + 76.0, + 737.0, + 76.0, + 737.0, + 403.0, + 439.0, + 403.0 + ] + ], + "area": 97446.0, + "bbox": [ + 439.0, + 76.0, + 298.0, + 327.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 535, + "image_id": 389, + "category_id": 1, + "segmentation": [ + [ + 316.0, + 182.00000000000003, + 658.0, + 182.00000000000003, + 658.0, + 604.0, + 316.0, + 604.0 + ] + ], + "area": 144324.0, + "bbox": [ + 316.0, + 182.00000000000003, + 342.0, + 421.99999999999994 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 536, + "image_id": 390, + "category_id": 1, + "segmentation": [ + [ + 61.0, + 125.99999999999999, + 121.0, + 125.99999999999999, + 121.0, + 206.0, + 61.0, + 206.0 + ] + ], + "area": 4800.000000000001, + "bbox": [ + 61.0, + 125.99999999999999, + 60.0, + 80.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 537, + "image_id": 390, + "category_id": 1, + "segmentation": [ + [ + 184.0, + 117.0, + 251.0, + 117.0, + 251.0, + 192.99999999999997, + 184.0, + 192.99999999999997 + ] + ], + "area": 5091.999999999998, + "bbox": [ + 184.0, + 117.0, + 67.0, + 76.0 + ], + "iscrowd": 0, + "attributes": "" + }, + { + "id": 538, + "image_id": 390, + "category_id": 1, + "segmentation": [ + [ + 350.00000000000006, + 114.99999999999999, + 439.0, + 114.99999999999999, + 439.0, + 215.0, + 350.00000000000006, + 215.0 + ] + ], + "area": 8899.999999999996, + "bbox": [ + 350.00000000000006, + 114.99999999999999, + 89.0, + 100.0 + ], + "iscrowd": 0, + "attributes": "" + } + ] +} \ No newline at end of file diff --git a/yolo_mindspore/dataset/mask/images/train/0000.jpg b/yolo_mindspore/dataset/mask/images/train/0000.jpg new file mode 100644 index 0000000..243c08a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0000.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00000.jpg b/yolo_mindspore/dataset/mask/images/train/00000.jpg new file mode 100644 index 0000000..f69266b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00000.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0001.jpg b/yolo_mindspore/dataset/mask/images/train/0001.jpg new file mode 100644 index 0000000..72411c8 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0001.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00010.jpg b/yolo_mindspore/dataset/mask/images/train/00010.jpg new file mode 100644 index 0000000..63d41b5 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00010.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0002.jpg b/yolo_mindspore/dataset/mask/images/train/0002.jpg new file mode 100644 index 0000000..4ae1756 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0002.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00020.jpg b/yolo_mindspore/dataset/mask/images/train/00020.jpg new file mode 100644 index 0000000..1b6629b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00020.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0003.jpg b/yolo_mindspore/dataset/mask/images/train/0003.jpg new file mode 100644 index 0000000..5aa6b16 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0003.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00030.jpg b/yolo_mindspore/dataset/mask/images/train/00030.jpg new file mode 100644 index 0000000..4f954c7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00030.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00040.jpg b/yolo_mindspore/dataset/mask/images/train/00040.jpg new file mode 100644 index 0000000..5370152 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00040.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0005.jpg b/yolo_mindspore/dataset/mask/images/train/0005.jpg new file mode 100644 index 0000000..b437b99 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0005.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00050.jpg b/yolo_mindspore/dataset/mask/images/train/00050.jpg new file mode 100644 index 0000000..5e9db88 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00050.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0006.jpg b/yolo_mindspore/dataset/mask/images/train/0006.jpg new file mode 100644 index 0000000..443a9ea Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0006.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00060.jpg b/yolo_mindspore/dataset/mask/images/train/00060.jpg new file mode 100644 index 0000000..acc0f3b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00060.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0007.jpg b/yolo_mindspore/dataset/mask/images/train/0007.jpg new file mode 100644 index 0000000..b1ab1ae Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0007.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00070.jpg b/yolo_mindspore/dataset/mask/images/train/00070.jpg new file mode 100644 index 0000000..037d5b3 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00070.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0008.jpg b/yolo_mindspore/dataset/mask/images/train/0008.jpg new file mode 100644 index 0000000..4ef9a24 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0008.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00080.jpg b/yolo_mindspore/dataset/mask/images/train/00080.jpg new file mode 100644 index 0000000..1d31c6c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00080.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0009.jpg b/yolo_mindspore/dataset/mask/images/train/0009.jpg new file mode 100644 index 0000000..5399bec Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0009.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00090.jpg b/yolo_mindspore/dataset/mask/images/train/00090.jpg new file mode 100644 index 0000000..04c399c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00090.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00100.jpg b/yolo_mindspore/dataset/mask/images/train/00100.jpg new file mode 100644 index 0000000..bc75ff3 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00100.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0011.jpg b/yolo_mindspore/dataset/mask/images/train/0011.jpg new file mode 100644 index 0000000..c670355 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0011.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0012.jpg b/yolo_mindspore/dataset/mask/images/train/0012.jpg new file mode 100644 index 0000000..7269e32 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0012.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0013.jpg b/yolo_mindspore/dataset/mask/images/train/0013.jpg new file mode 100644 index 0000000..0a32147 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0013.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0014.jpg b/yolo_mindspore/dataset/mask/images/train/0014.jpg new file mode 100644 index 0000000..54c43a1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0014.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0016.jpg b/yolo_mindspore/dataset/mask/images/train/0016.jpg new file mode 100644 index 0000000..eda0e77 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0016.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0018.jpg b/yolo_mindspore/dataset/mask/images/train/0018.jpg new file mode 100644 index 0000000..ddaa0b4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0018.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0019.jpg b/yolo_mindspore/dataset/mask/images/train/0019.jpg new file mode 100644 index 0000000..be41373 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0019.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0020.jpg b/yolo_mindspore/dataset/mask/images/train/0020.jpg new file mode 100644 index 0000000..7fba53a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0020.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0021.jpg b/yolo_mindspore/dataset/mask/images/train/0021.jpg new file mode 100644 index 0000000..8869829 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0021.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0022.jpg b/yolo_mindspore/dataset/mask/images/train/0022.jpg new file mode 100644 index 0000000..4a58ab6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0022.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0023.jpg b/yolo_mindspore/dataset/mask/images/train/0023.jpg new file mode 100644 index 0000000..85e2cab Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0023.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0024.jpg b/yolo_mindspore/dataset/mask/images/train/0024.jpg new file mode 100644 index 0000000..95e9b9e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0024.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0025.jpg b/yolo_mindspore/dataset/mask/images/train/0025.jpg new file mode 100644 index 0000000..1aa6b3b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0025.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0026.jpg b/yolo_mindspore/dataset/mask/images/train/0026.jpg new file mode 100644 index 0000000..b5f2aef Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0026.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0027.jpg b/yolo_mindspore/dataset/mask/images/train/0027.jpg new file mode 100644 index 0000000..347eebd Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0027.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0028.jpg b/yolo_mindspore/dataset/mask/images/train/0028.jpg new file mode 100644 index 0000000..2a87f74 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0028.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0029.jpg b/yolo_mindspore/dataset/mask/images/train/0029.jpg new file mode 100644 index 0000000..b81007a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0029.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0030.jpg b/yolo_mindspore/dataset/mask/images/train/0030.jpg new file mode 100644 index 0000000..f6708c7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0030.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0031.jpg b/yolo_mindspore/dataset/mask/images/train/0031.jpg new file mode 100644 index 0000000..16f275e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0031.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0032.jpg b/yolo_mindspore/dataset/mask/images/train/0032.jpg new file mode 100644 index 0000000..0ed9625 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0032.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0033.jpg b/yolo_mindspore/dataset/mask/images/train/0033.jpg new file mode 100644 index 0000000..4418aae Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0033.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0034.jpg b/yolo_mindspore/dataset/mask/images/train/0034.jpg new file mode 100644 index 0000000..a36e2aa Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0034.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0035.jpg b/yolo_mindspore/dataset/mask/images/train/0035.jpg new file mode 100644 index 0000000..142d090 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0035.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0036.jpg b/yolo_mindspore/dataset/mask/images/train/0036.jpg new file mode 100644 index 0000000..c13b55e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0036.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0037.jpg b/yolo_mindspore/dataset/mask/images/train/0037.jpg new file mode 100644 index 0000000..546fab6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0037.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0039.jpg b/yolo_mindspore/dataset/mask/images/train/0039.jpg new file mode 100644 index 0000000..c1d8d10 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0039.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0040.jpg b/yolo_mindspore/dataset/mask/images/train/0040.jpg new file mode 100644 index 0000000..536c5fb Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0040.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0041.jpg b/yolo_mindspore/dataset/mask/images/train/0041.jpg new file mode 100644 index 0000000..b25288b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0041.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0042.jpg b/yolo_mindspore/dataset/mask/images/train/0042.jpg new file mode 100644 index 0000000..d0e48f2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0042.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0043.jpg b/yolo_mindspore/dataset/mask/images/train/0043.jpg new file mode 100644 index 0000000..7f79f87 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0043.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0044.jpg b/yolo_mindspore/dataset/mask/images/train/0044.jpg new file mode 100644 index 0000000..531e747 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0044.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0045.jpg b/yolo_mindspore/dataset/mask/images/train/0045.jpg new file mode 100644 index 0000000..f134438 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0045.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0046.jpg b/yolo_mindspore/dataset/mask/images/train/0046.jpg new file mode 100644 index 0000000..e184a42 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0046.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0047.jpg b/yolo_mindspore/dataset/mask/images/train/0047.jpg new file mode 100644 index 0000000..86166f9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0047.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0048.jpg b/yolo_mindspore/dataset/mask/images/train/0048.jpg new file mode 100644 index 0000000..015f5b7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0048.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0049.jpg b/yolo_mindspore/dataset/mask/images/train/0049.jpg new file mode 100644 index 0000000..f66f50a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0049.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0050.jpg b/yolo_mindspore/dataset/mask/images/train/0050.jpg new file mode 100644 index 0000000..5d9c606 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0050.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0051.jpg b/yolo_mindspore/dataset/mask/images/train/0051.jpg new file mode 100644 index 0000000..0c06d66 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0051.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0052.jpg b/yolo_mindspore/dataset/mask/images/train/0052.jpg new file mode 100644 index 0000000..9f2ec8e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0052.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00520.jpg b/yolo_mindspore/dataset/mask/images/train/00520.jpg new file mode 100644 index 0000000..0693665 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00520.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0053.jpg b/yolo_mindspore/dataset/mask/images/train/0053.jpg new file mode 100644 index 0000000..bee3e53 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0053.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00530.jpg b/yolo_mindspore/dataset/mask/images/train/00530.jpg new file mode 100644 index 0000000..52b2a45 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00530.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0054.jpg b/yolo_mindspore/dataset/mask/images/train/0054.jpg new file mode 100644 index 0000000..56380df Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0054.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00540.jpg b/yolo_mindspore/dataset/mask/images/train/00540.jpg new file mode 100644 index 0000000..d60897f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00540.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0055.jpg b/yolo_mindspore/dataset/mask/images/train/0055.jpg new file mode 100644 index 0000000..ac60480 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0055.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0056.jpg b/yolo_mindspore/dataset/mask/images/train/0056.jpg new file mode 100644 index 0000000..00b7441 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0056.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00560.jpg b/yolo_mindspore/dataset/mask/images/train/00560.jpg new file mode 100644 index 0000000..c645251 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00560.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0057.jpg b/yolo_mindspore/dataset/mask/images/train/0057.jpg new file mode 100644 index 0000000..2994ab7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0057.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0058.jpg b/yolo_mindspore/dataset/mask/images/train/0058.jpg new file mode 100644 index 0000000..f7d8ab8 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0058.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00580.jpg b/yolo_mindspore/dataset/mask/images/train/00580.jpg new file mode 100644 index 0000000..98969bf Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00580.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0059.jpg b/yolo_mindspore/dataset/mask/images/train/0059.jpg new file mode 100644 index 0000000..9194f39 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0059.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00590.jpg b/yolo_mindspore/dataset/mask/images/train/00590.jpg new file mode 100644 index 0000000..1920ef8 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00590.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0060.jpg b/yolo_mindspore/dataset/mask/images/train/0060.jpg new file mode 100644 index 0000000..1c555ad Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0060.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00600.jpg b/yolo_mindspore/dataset/mask/images/train/00600.jpg new file mode 100644 index 0000000..e0bd454 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00600.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0061.jpg b/yolo_mindspore/dataset/mask/images/train/0061.jpg new file mode 100644 index 0000000..988a1dc Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0061.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00610.jpg b/yolo_mindspore/dataset/mask/images/train/00610.jpg new file mode 100644 index 0000000..644fe1e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00610.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0062.jpg b/yolo_mindspore/dataset/mask/images/train/0062.jpg new file mode 100644 index 0000000..5eca27e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0062.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00620.jpg b/yolo_mindspore/dataset/mask/images/train/00620.jpg new file mode 100644 index 0000000..4fe9ad7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00620.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0063.jpg b/yolo_mindspore/dataset/mask/images/train/0063.jpg new file mode 100644 index 0000000..940b1b9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0063.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00630.jpg b/yolo_mindspore/dataset/mask/images/train/00630.jpg new file mode 100644 index 0000000..c31e9d2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00630.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0064.jpg b/yolo_mindspore/dataset/mask/images/train/0064.jpg new file mode 100644 index 0000000..d45448c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0064.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00640.jpg b/yolo_mindspore/dataset/mask/images/train/00640.jpg new file mode 100644 index 0000000..0e33506 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00640.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0065.jpg b/yolo_mindspore/dataset/mask/images/train/0065.jpg new file mode 100644 index 0000000..26e44b0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0065.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00650.jpg b/yolo_mindspore/dataset/mask/images/train/00650.jpg new file mode 100644 index 0000000..90fea79 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00650.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0066.jpg b/yolo_mindspore/dataset/mask/images/train/0066.jpg new file mode 100644 index 0000000..bcf0437 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0066.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0067.jpg b/yolo_mindspore/dataset/mask/images/train/0067.jpg new file mode 100644 index 0000000..23c607b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0067.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00670.jpg b/yolo_mindspore/dataset/mask/images/train/00670.jpg new file mode 100644 index 0000000..04dfccf Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00670.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0068.jpg b/yolo_mindspore/dataset/mask/images/train/0068.jpg new file mode 100644 index 0000000..e708035 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0068.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00680.jpg b/yolo_mindspore/dataset/mask/images/train/00680.jpg new file mode 100644 index 0000000..e72cefe Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00680.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0070.jpg b/yolo_mindspore/dataset/mask/images/train/0070.jpg new file mode 100644 index 0000000..5b71195 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0070.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00700.jpg b/yolo_mindspore/dataset/mask/images/train/00700.jpg new file mode 100644 index 0000000..75f62f4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00700.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0071.jpg b/yolo_mindspore/dataset/mask/images/train/0071.jpg new file mode 100644 index 0000000..6cd291c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0071.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00710.jpg b/yolo_mindspore/dataset/mask/images/train/00710.jpg new file mode 100644 index 0000000..817052d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00710.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0072.jpg b/yolo_mindspore/dataset/mask/images/train/0072.jpg new file mode 100644 index 0000000..af7c569 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0072.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00720.jpg b/yolo_mindspore/dataset/mask/images/train/00720.jpg new file mode 100644 index 0000000..c5d8411 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00720.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0073.jpg b/yolo_mindspore/dataset/mask/images/train/0073.jpg new file mode 100644 index 0000000..1d651b7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0073.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00730.jpg b/yolo_mindspore/dataset/mask/images/train/00730.jpg new file mode 100644 index 0000000..e1b298a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00730.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0074.jpg b/yolo_mindspore/dataset/mask/images/train/0074.jpg new file mode 100644 index 0000000..f9b6cef Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0074.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00740.jpg b/yolo_mindspore/dataset/mask/images/train/00740.jpg new file mode 100644 index 0000000..36d3303 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00740.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0075.jpg b/yolo_mindspore/dataset/mask/images/train/0075.jpg new file mode 100644 index 0000000..5066a66 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0075.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00750.jpg b/yolo_mindspore/dataset/mask/images/train/00750.jpg new file mode 100644 index 0000000..f934100 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00750.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0076.jpg b/yolo_mindspore/dataset/mask/images/train/0076.jpg new file mode 100644 index 0000000..e532fce Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0076.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00760.jpg b/yolo_mindspore/dataset/mask/images/train/00760.jpg new file mode 100644 index 0000000..3bfd84e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00760.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0077.jpg b/yolo_mindspore/dataset/mask/images/train/0077.jpg new file mode 100644 index 0000000..8fec297 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0077.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00770.jpg b/yolo_mindspore/dataset/mask/images/train/00770.jpg new file mode 100644 index 0000000..c1b0596 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00770.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0078.jpg b/yolo_mindspore/dataset/mask/images/train/0078.jpg new file mode 100644 index 0000000..b2ea5be Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0078.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0079.jpg b/yolo_mindspore/dataset/mask/images/train/0079.jpg new file mode 100644 index 0000000..4566085 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0079.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00790.jpg b/yolo_mindspore/dataset/mask/images/train/00790.jpg new file mode 100644 index 0000000..6fa4308 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00790.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0080.jpg b/yolo_mindspore/dataset/mask/images/train/0080.jpg new file mode 100644 index 0000000..793adde Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0080.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00800.jpg b/yolo_mindspore/dataset/mask/images/train/00800.jpg new file mode 100644 index 0000000..5de3fdd Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00800.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0081.jpg b/yolo_mindspore/dataset/mask/images/train/0081.jpg new file mode 100644 index 0000000..deea090 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0081.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00810.jpg b/yolo_mindspore/dataset/mask/images/train/00810.jpg new file mode 100644 index 0000000..0ee460f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00810.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0082.jpg b/yolo_mindspore/dataset/mask/images/train/0082.jpg new file mode 100644 index 0000000..4a7138a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0082.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00820.jpg b/yolo_mindspore/dataset/mask/images/train/00820.jpg new file mode 100644 index 0000000..e66c2ec Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00820.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0083.jpg b/yolo_mindspore/dataset/mask/images/train/0083.jpg new file mode 100644 index 0000000..da3cbab Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0083.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00830.jpg b/yolo_mindspore/dataset/mask/images/train/00830.jpg new file mode 100644 index 0000000..5f0fd33 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00830.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0084.jpg b/yolo_mindspore/dataset/mask/images/train/0084.jpg new file mode 100644 index 0000000..c92cd21 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0084.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00840.jpg b/yolo_mindspore/dataset/mask/images/train/00840.jpg new file mode 100644 index 0000000..52c57d0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00840.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0085.jpg b/yolo_mindspore/dataset/mask/images/train/0085.jpg new file mode 100644 index 0000000..eda2c62 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0085.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00850.jpg b/yolo_mindspore/dataset/mask/images/train/00850.jpg new file mode 100644 index 0000000..2831ebd Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00850.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0086.jpg b/yolo_mindspore/dataset/mask/images/train/0086.jpg new file mode 100644 index 0000000..a7836b7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0086.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00860.jpg b/yolo_mindspore/dataset/mask/images/train/00860.jpg new file mode 100644 index 0000000..6f83680 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00860.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0087.jpg b/yolo_mindspore/dataset/mask/images/train/0087.jpg new file mode 100644 index 0000000..3fa5637 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0087.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00870.jpg b/yolo_mindspore/dataset/mask/images/train/00870.jpg new file mode 100644 index 0000000..311b744 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00870.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0088.jpg b/yolo_mindspore/dataset/mask/images/train/0088.jpg new file mode 100644 index 0000000..a4f9a04 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0088.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00880.jpg b/yolo_mindspore/dataset/mask/images/train/00880.jpg new file mode 100644 index 0000000..8bd996e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00880.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0089.jpg b/yolo_mindspore/dataset/mask/images/train/0089.jpg new file mode 100644 index 0000000..255670a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0089.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00890.jpg b/yolo_mindspore/dataset/mask/images/train/00890.jpg new file mode 100644 index 0000000..0ada40a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00890.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0090.jpg b/yolo_mindspore/dataset/mask/images/train/0090.jpg new file mode 100644 index 0000000..68ac20a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0090.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00900.jpg b/yolo_mindspore/dataset/mask/images/train/00900.jpg new file mode 100644 index 0000000..b519a16 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00900.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0091.jpg b/yolo_mindspore/dataset/mask/images/train/0091.jpg new file mode 100644 index 0000000..4d9a071 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0091.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00910.jpg b/yolo_mindspore/dataset/mask/images/train/00910.jpg new file mode 100644 index 0000000..a13b623 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00910.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0092.jpg b/yolo_mindspore/dataset/mask/images/train/0092.jpg new file mode 100644 index 0000000..1f23833 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0092.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00920.jpg b/yolo_mindspore/dataset/mask/images/train/00920.jpg new file mode 100644 index 0000000..9819dd4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00920.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00930.jpg b/yolo_mindspore/dataset/mask/images/train/00930.jpg new file mode 100644 index 0000000..22c8527 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00930.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0094.jpg b/yolo_mindspore/dataset/mask/images/train/0094.jpg new file mode 100644 index 0000000..df0b8c3 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0094.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0095.jpg b/yolo_mindspore/dataset/mask/images/train/0095.jpg new file mode 100644 index 0000000..4606274 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0095.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00950.jpg b/yolo_mindspore/dataset/mask/images/train/00950.jpg new file mode 100644 index 0000000..8b7798a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00950.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0096.jpg b/yolo_mindspore/dataset/mask/images/train/0096.jpg new file mode 100644 index 0000000..781ad84 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0096.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0097.jpg b/yolo_mindspore/dataset/mask/images/train/0097.jpg new file mode 100644 index 0000000..b81e5fa Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0097.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00970.jpg b/yolo_mindspore/dataset/mask/images/train/00970.jpg new file mode 100644 index 0000000..0f59259 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00970.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0098.jpg b/yolo_mindspore/dataset/mask/images/train/0098.jpg new file mode 100644 index 0000000..24502d4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0098.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/00980.jpg b/yolo_mindspore/dataset/mask/images/train/00980.jpg new file mode 100644 index 0000000..37cdffc Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/00980.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0099.jpg b/yolo_mindspore/dataset/mask/images/train/0099.jpg new file mode 100644 index 0000000..03a62bc Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0099.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0100.jpg b/yolo_mindspore/dataset/mask/images/train/0100.jpg new file mode 100644 index 0000000..d78e84a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0100.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01000.jpg b/yolo_mindspore/dataset/mask/images/train/01000.jpg new file mode 100644 index 0000000..fcdc58c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01000.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/0101.jpg b/yolo_mindspore/dataset/mask/images/train/0101.jpg new file mode 100644 index 0000000..60f1cca Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/0101.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01010.jpg b/yolo_mindspore/dataset/mask/images/train/01010.jpg new file mode 100644 index 0000000..4fe4520 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01010.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01020.jpg b/yolo_mindspore/dataset/mask/images/train/01020.jpg new file mode 100644 index 0000000..07b207a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01020.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01030.jpg b/yolo_mindspore/dataset/mask/images/train/01030.jpg new file mode 100644 index 0000000..945127d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01030.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01040.jpg b/yolo_mindspore/dataset/mask/images/train/01040.jpg new file mode 100644 index 0000000..67148d0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01040.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01050.jpg b/yolo_mindspore/dataset/mask/images/train/01050.jpg new file mode 100644 index 0000000..1ec686f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01050.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01060.jpg b/yolo_mindspore/dataset/mask/images/train/01060.jpg new file mode 100644 index 0000000..cc04ae7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01060.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01080.jpg b/yolo_mindspore/dataset/mask/images/train/01080.jpg new file mode 100644 index 0000000..24ada68 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01080.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01090.jpg b/yolo_mindspore/dataset/mask/images/train/01090.jpg new file mode 100644 index 0000000..dc3eba3 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01090.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01100.jpg b/yolo_mindspore/dataset/mask/images/train/01100.jpg new file mode 100644 index 0000000..d5ca6ce Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01100.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01110.jpg b/yolo_mindspore/dataset/mask/images/train/01110.jpg new file mode 100644 index 0000000..9922bdc Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01110.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01120.jpg b/yolo_mindspore/dataset/mask/images/train/01120.jpg new file mode 100644 index 0000000..bc1b451 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01120.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01130.jpg b/yolo_mindspore/dataset/mask/images/train/01130.jpg new file mode 100644 index 0000000..e520a2c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01130.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01140.jpg b/yolo_mindspore/dataset/mask/images/train/01140.jpg new file mode 100644 index 0000000..98ab2e2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01140.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01150.jpg b/yolo_mindspore/dataset/mask/images/train/01150.jpg new file mode 100644 index 0000000..0d1bef6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01150.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01170.jpg b/yolo_mindspore/dataset/mask/images/train/01170.jpg new file mode 100644 index 0000000..a9f277c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01170.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01180.jpg b/yolo_mindspore/dataset/mask/images/train/01180.jpg new file mode 100644 index 0000000..7631151 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01180.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01190.jpg b/yolo_mindspore/dataset/mask/images/train/01190.jpg new file mode 100644 index 0000000..dd270c2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01190.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01200.jpg b/yolo_mindspore/dataset/mask/images/train/01200.jpg new file mode 100644 index 0000000..ea83d8d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01200.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01210.jpg b/yolo_mindspore/dataset/mask/images/train/01210.jpg new file mode 100644 index 0000000..1903275 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01210.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01220.jpg b/yolo_mindspore/dataset/mask/images/train/01220.jpg new file mode 100644 index 0000000..37f0af9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01220.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01230.jpg b/yolo_mindspore/dataset/mask/images/train/01230.jpg new file mode 100644 index 0000000..1d582e2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01230.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01240.jpg b/yolo_mindspore/dataset/mask/images/train/01240.jpg new file mode 100644 index 0000000..d285279 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01240.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01250.jpg b/yolo_mindspore/dataset/mask/images/train/01250.jpg new file mode 100644 index 0000000..f641a5e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01250.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01260.jpg b/yolo_mindspore/dataset/mask/images/train/01260.jpg new file mode 100644 index 0000000..730f153 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01260.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01270.jpg b/yolo_mindspore/dataset/mask/images/train/01270.jpg new file mode 100644 index 0000000..a222ebf Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01270.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01280.jpg b/yolo_mindspore/dataset/mask/images/train/01280.jpg new file mode 100644 index 0000000..32ae86c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01280.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01290.jpg b/yolo_mindspore/dataset/mask/images/train/01290.jpg new file mode 100644 index 0000000..ff59195 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01290.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01300.jpg b/yolo_mindspore/dataset/mask/images/train/01300.jpg new file mode 100644 index 0000000..c84042c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01300.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01310.jpg b/yolo_mindspore/dataset/mask/images/train/01310.jpg new file mode 100644 index 0000000..a692213 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01310.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01320.jpg b/yolo_mindspore/dataset/mask/images/train/01320.jpg new file mode 100644 index 0000000..0342725 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01320.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01330.jpg b/yolo_mindspore/dataset/mask/images/train/01330.jpg new file mode 100644 index 0000000..ed5a59c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01330.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01340.jpg b/yolo_mindspore/dataset/mask/images/train/01340.jpg new file mode 100644 index 0000000..016dcb1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01340.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01350.jpg b/yolo_mindspore/dataset/mask/images/train/01350.jpg new file mode 100644 index 0000000..f2c2fe1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01350.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01370.jpg b/yolo_mindspore/dataset/mask/images/train/01370.jpg new file mode 100644 index 0000000..030ab40 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01370.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01380.jpg b/yolo_mindspore/dataset/mask/images/train/01380.jpg new file mode 100644 index 0000000..e7ac2f6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01380.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01390.jpg b/yolo_mindspore/dataset/mask/images/train/01390.jpg new file mode 100644 index 0000000..4419e8c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01390.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01410.jpg b/yolo_mindspore/dataset/mask/images/train/01410.jpg new file mode 100644 index 0000000..a89997b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01410.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01420.jpg b/yolo_mindspore/dataset/mask/images/train/01420.jpg new file mode 100644 index 0000000..c48b979 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01420.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01430.jpg b/yolo_mindspore/dataset/mask/images/train/01430.jpg new file mode 100644 index 0000000..76b831c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01430.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01440.jpg b/yolo_mindspore/dataset/mask/images/train/01440.jpg new file mode 100644 index 0000000..bc2b7e8 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01440.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01460.jpg b/yolo_mindspore/dataset/mask/images/train/01460.jpg new file mode 100644 index 0000000..2eba945 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01460.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01470.jpg b/yolo_mindspore/dataset/mask/images/train/01470.jpg new file mode 100644 index 0000000..0d071ec Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01470.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01480.jpg b/yolo_mindspore/dataset/mask/images/train/01480.jpg new file mode 100644 index 0000000..658edfa Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01480.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01490.jpg b/yolo_mindspore/dataset/mask/images/train/01490.jpg new file mode 100644 index 0000000..f94cd25 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01490.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01500.jpg b/yolo_mindspore/dataset/mask/images/train/01500.jpg new file mode 100644 index 0000000..5c46857 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01500.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01510.jpg b/yolo_mindspore/dataset/mask/images/train/01510.jpg new file mode 100644 index 0000000..2d8e747 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01510.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01520.jpg b/yolo_mindspore/dataset/mask/images/train/01520.jpg new file mode 100644 index 0000000..77da8b4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01520.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01530.jpg b/yolo_mindspore/dataset/mask/images/train/01530.jpg new file mode 100644 index 0000000..8f0fd47 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01530.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01540.jpg b/yolo_mindspore/dataset/mask/images/train/01540.jpg new file mode 100644 index 0000000..9560c77 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01540.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01550.jpg b/yolo_mindspore/dataset/mask/images/train/01550.jpg new file mode 100644 index 0000000..146b2a2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01550.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01560.jpg b/yolo_mindspore/dataset/mask/images/train/01560.jpg new file mode 100644 index 0000000..ad6de5c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01560.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01570.jpg b/yolo_mindspore/dataset/mask/images/train/01570.jpg new file mode 100644 index 0000000..0caddae Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01570.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01580.jpg b/yolo_mindspore/dataset/mask/images/train/01580.jpg new file mode 100644 index 0000000..3906ed7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01580.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01590.jpg b/yolo_mindspore/dataset/mask/images/train/01590.jpg new file mode 100644 index 0000000..cd97e8b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01590.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01600.jpg b/yolo_mindspore/dataset/mask/images/train/01600.jpg new file mode 100644 index 0000000..f618f22 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01600.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01620.jpg b/yolo_mindspore/dataset/mask/images/train/01620.jpg new file mode 100644 index 0000000..342807b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01620.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01630.jpg b/yolo_mindspore/dataset/mask/images/train/01630.jpg new file mode 100644 index 0000000..164d617 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01630.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01640.jpg b/yolo_mindspore/dataset/mask/images/train/01640.jpg new file mode 100644 index 0000000..4f67a22 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01640.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01650.jpg b/yolo_mindspore/dataset/mask/images/train/01650.jpg new file mode 100644 index 0000000..b5fd2c8 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01650.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01660.jpg b/yolo_mindspore/dataset/mask/images/train/01660.jpg new file mode 100644 index 0000000..5a75558 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01660.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01670.jpg b/yolo_mindspore/dataset/mask/images/train/01670.jpg new file mode 100644 index 0000000..c6f8cd2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01670.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01690.jpg b/yolo_mindspore/dataset/mask/images/train/01690.jpg new file mode 100644 index 0000000..6c47e0d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01690.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01710.jpg b/yolo_mindspore/dataset/mask/images/train/01710.jpg new file mode 100644 index 0000000..f1cbc41 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01710.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01720.jpg b/yolo_mindspore/dataset/mask/images/train/01720.jpg new file mode 100644 index 0000000..c6532ea Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01720.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01730.jpg b/yolo_mindspore/dataset/mask/images/train/01730.jpg new file mode 100644 index 0000000..a179931 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01730.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01750.jpg b/yolo_mindspore/dataset/mask/images/train/01750.jpg new file mode 100644 index 0000000..7953e09 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01750.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01780.jpg b/yolo_mindspore/dataset/mask/images/train/01780.jpg new file mode 100644 index 0000000..c0ae9a1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01780.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01790.jpg b/yolo_mindspore/dataset/mask/images/train/01790.jpg new file mode 100644 index 0000000..af8bfa2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01790.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01800.jpg b/yolo_mindspore/dataset/mask/images/train/01800.jpg new file mode 100644 index 0000000..04974a6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01800.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01810.jpg b/yolo_mindspore/dataset/mask/images/train/01810.jpg new file mode 100644 index 0000000..63f7959 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01810.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01820.jpg b/yolo_mindspore/dataset/mask/images/train/01820.jpg new file mode 100644 index 0000000..c7761d9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01820.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01830.jpg b/yolo_mindspore/dataset/mask/images/train/01830.jpg new file mode 100644 index 0000000..e6fe516 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01830.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01840.jpg b/yolo_mindspore/dataset/mask/images/train/01840.jpg new file mode 100644 index 0000000..07fe2cb Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01840.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01850.jpg b/yolo_mindspore/dataset/mask/images/train/01850.jpg new file mode 100644 index 0000000..db9cab9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01850.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01860.jpg b/yolo_mindspore/dataset/mask/images/train/01860.jpg new file mode 100644 index 0000000..877360b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01860.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01870.jpg b/yolo_mindspore/dataset/mask/images/train/01870.jpg new file mode 100644 index 0000000..0a8d2a0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01870.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01880.jpg b/yolo_mindspore/dataset/mask/images/train/01880.jpg new file mode 100644 index 0000000..d50bffd Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01880.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01890.jpg b/yolo_mindspore/dataset/mask/images/train/01890.jpg new file mode 100644 index 0000000..c8bcb42 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01890.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01900.jpg b/yolo_mindspore/dataset/mask/images/train/01900.jpg new file mode 100644 index 0000000..fc0d150 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01900.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01910.jpg b/yolo_mindspore/dataset/mask/images/train/01910.jpg new file mode 100644 index 0000000..4cef5f7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01910.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01930.jpg b/yolo_mindspore/dataset/mask/images/train/01930.jpg new file mode 100644 index 0000000..553823d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01930.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01940.jpg b/yolo_mindspore/dataset/mask/images/train/01940.jpg new file mode 100644 index 0000000..6f3560c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01940.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01950.jpg b/yolo_mindspore/dataset/mask/images/train/01950.jpg new file mode 100644 index 0000000..e95b4a8 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01950.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01960.jpg b/yolo_mindspore/dataset/mask/images/train/01960.jpg new file mode 100644 index 0000000..f7fd385 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01960.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01970.jpg b/yolo_mindspore/dataset/mask/images/train/01970.jpg new file mode 100644 index 0000000..ac51033 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01970.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/01980.jpg b/yolo_mindspore/dataset/mask/images/train/01980.jpg new file mode 100644 index 0000000..7ae5349 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/01980.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02000.jpg b/yolo_mindspore/dataset/mask/images/train/02000.jpg new file mode 100644 index 0000000..e25f600 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02000.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02010.jpg b/yolo_mindspore/dataset/mask/images/train/02010.jpg new file mode 100644 index 0000000..9fdc17d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02010.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02020.jpg b/yolo_mindspore/dataset/mask/images/train/02020.jpg new file mode 100644 index 0000000..999f62a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02020.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02030.jpg b/yolo_mindspore/dataset/mask/images/train/02030.jpg new file mode 100644 index 0000000..08dd522 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02030.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02040.jpg b/yolo_mindspore/dataset/mask/images/train/02040.jpg new file mode 100644 index 0000000..8a7df18 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02040.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02050.jpg b/yolo_mindspore/dataset/mask/images/train/02050.jpg new file mode 100644 index 0000000..5f77734 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02050.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02060.jpg b/yolo_mindspore/dataset/mask/images/train/02060.jpg new file mode 100644 index 0000000..59a3b8f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02060.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02070.jpg b/yolo_mindspore/dataset/mask/images/train/02070.jpg new file mode 100644 index 0000000..badcfc3 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02070.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02080.jpg b/yolo_mindspore/dataset/mask/images/train/02080.jpg new file mode 100644 index 0000000..023aa61 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02080.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02090.jpg b/yolo_mindspore/dataset/mask/images/train/02090.jpg new file mode 100644 index 0000000..fa38225 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02090.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02100.jpg b/yolo_mindspore/dataset/mask/images/train/02100.jpg new file mode 100644 index 0000000..0f20009 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02100.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02110.jpg b/yolo_mindspore/dataset/mask/images/train/02110.jpg new file mode 100644 index 0000000..7b1d51f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02110.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02120.jpg b/yolo_mindspore/dataset/mask/images/train/02120.jpg new file mode 100644 index 0000000..619551d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02120.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02140.jpg b/yolo_mindspore/dataset/mask/images/train/02140.jpg new file mode 100644 index 0000000..cdaccaf Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02140.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02150.jpg b/yolo_mindspore/dataset/mask/images/train/02150.jpg new file mode 100644 index 0000000..7bee34e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02150.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02160.jpg b/yolo_mindspore/dataset/mask/images/train/02160.jpg new file mode 100644 index 0000000..b209353 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02160.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02170.jpg b/yolo_mindspore/dataset/mask/images/train/02170.jpg new file mode 100644 index 0000000..c538808 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02170.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02180.jpg b/yolo_mindspore/dataset/mask/images/train/02180.jpg new file mode 100644 index 0000000..c18ec97 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02180.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02190.jpg b/yolo_mindspore/dataset/mask/images/train/02190.jpg new file mode 100644 index 0000000..138d113 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02190.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02200.jpg b/yolo_mindspore/dataset/mask/images/train/02200.jpg new file mode 100644 index 0000000..f9a7aae Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02200.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02210.jpg b/yolo_mindspore/dataset/mask/images/train/02210.jpg new file mode 100644 index 0000000..b14339c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02210.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02220.jpg b/yolo_mindspore/dataset/mask/images/train/02220.jpg new file mode 100644 index 0000000..ddb50f2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02220.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02230.jpg b/yolo_mindspore/dataset/mask/images/train/02230.jpg new file mode 100644 index 0000000..7a213d3 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02230.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02240.jpg b/yolo_mindspore/dataset/mask/images/train/02240.jpg new file mode 100644 index 0000000..dda143a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02240.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02250.jpg b/yolo_mindspore/dataset/mask/images/train/02250.jpg new file mode 100644 index 0000000..af74ebe Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02250.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02260.jpg b/yolo_mindspore/dataset/mask/images/train/02260.jpg new file mode 100644 index 0000000..4e22b49 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02260.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02270.jpg b/yolo_mindspore/dataset/mask/images/train/02270.jpg new file mode 100644 index 0000000..8206b07 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02270.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02280.jpg b/yolo_mindspore/dataset/mask/images/train/02280.jpg new file mode 100644 index 0000000..a30288a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02280.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02290.jpg b/yolo_mindspore/dataset/mask/images/train/02290.jpg new file mode 100644 index 0000000..d2154c0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02290.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02300.jpg b/yolo_mindspore/dataset/mask/images/train/02300.jpg new file mode 100644 index 0000000..ee819a6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02300.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02310.jpg b/yolo_mindspore/dataset/mask/images/train/02310.jpg new file mode 100644 index 0000000..b8d2a10 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02310.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02320.jpg b/yolo_mindspore/dataset/mask/images/train/02320.jpg new file mode 100644 index 0000000..401ae2a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02320.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02330.jpg b/yolo_mindspore/dataset/mask/images/train/02330.jpg new file mode 100644 index 0000000..96bc17e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02330.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02350.jpg b/yolo_mindspore/dataset/mask/images/train/02350.jpg new file mode 100644 index 0000000..fb3ea24 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02350.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02360.jpg b/yolo_mindspore/dataset/mask/images/train/02360.jpg new file mode 100644 index 0000000..bb03d91 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02360.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02370.jpg b/yolo_mindspore/dataset/mask/images/train/02370.jpg new file mode 100644 index 0000000..778bd27 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02370.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02380.jpg b/yolo_mindspore/dataset/mask/images/train/02380.jpg new file mode 100644 index 0000000..165675f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02380.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02390.jpg b/yolo_mindspore/dataset/mask/images/train/02390.jpg new file mode 100644 index 0000000..a5a6679 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02390.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02400.jpg b/yolo_mindspore/dataset/mask/images/train/02400.jpg new file mode 100644 index 0000000..6ee852b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02400.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02410.jpg b/yolo_mindspore/dataset/mask/images/train/02410.jpg new file mode 100644 index 0000000..95720cf Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02410.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02420.jpg b/yolo_mindspore/dataset/mask/images/train/02420.jpg new file mode 100644 index 0000000..74d0f99 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02420.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02430.jpg b/yolo_mindspore/dataset/mask/images/train/02430.jpg new file mode 100644 index 0000000..0f4c21f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02430.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02440.jpg b/yolo_mindspore/dataset/mask/images/train/02440.jpg new file mode 100644 index 0000000..9dd9c9f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02440.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02460.jpg b/yolo_mindspore/dataset/mask/images/train/02460.jpg new file mode 100644 index 0000000..8845d5a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02460.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02470.jpg b/yolo_mindspore/dataset/mask/images/train/02470.jpg new file mode 100644 index 0000000..7dc13e2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02470.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02480.jpg b/yolo_mindspore/dataset/mask/images/train/02480.jpg new file mode 100644 index 0000000..e7d5efe Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02480.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02500.jpg b/yolo_mindspore/dataset/mask/images/train/02500.jpg new file mode 100644 index 0000000..9454f2f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02500.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02510.jpg b/yolo_mindspore/dataset/mask/images/train/02510.jpg new file mode 100644 index 0000000..72e927f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02510.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02520.jpg b/yolo_mindspore/dataset/mask/images/train/02520.jpg new file mode 100644 index 0000000..eb646d0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02520.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02540.jpg b/yolo_mindspore/dataset/mask/images/train/02540.jpg new file mode 100644 index 0000000..f429bea Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02540.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02550.jpg b/yolo_mindspore/dataset/mask/images/train/02550.jpg new file mode 100644 index 0000000..46e0105 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02550.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02560.jpg b/yolo_mindspore/dataset/mask/images/train/02560.jpg new file mode 100644 index 0000000..63e4c09 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02560.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02570.jpg b/yolo_mindspore/dataset/mask/images/train/02570.jpg new file mode 100644 index 0000000..633cf6d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02570.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02580.jpg b/yolo_mindspore/dataset/mask/images/train/02580.jpg new file mode 100644 index 0000000..c9cb83b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02580.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02590.jpg b/yolo_mindspore/dataset/mask/images/train/02590.jpg new file mode 100644 index 0000000..7442122 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02590.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02600.jpg b/yolo_mindspore/dataset/mask/images/train/02600.jpg new file mode 100644 index 0000000..ac16237 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02600.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02620.jpg b/yolo_mindspore/dataset/mask/images/train/02620.jpg new file mode 100644 index 0000000..321b1e8 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02620.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02630.jpg b/yolo_mindspore/dataset/mask/images/train/02630.jpg new file mode 100644 index 0000000..853effc Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02630.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02640.jpg b/yolo_mindspore/dataset/mask/images/train/02640.jpg new file mode 100644 index 0000000..8df9caa Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02640.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02650.jpg b/yolo_mindspore/dataset/mask/images/train/02650.jpg new file mode 100644 index 0000000..0270138 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02650.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02660.jpg b/yolo_mindspore/dataset/mask/images/train/02660.jpg new file mode 100644 index 0000000..cfffe92 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02660.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02670.jpg b/yolo_mindspore/dataset/mask/images/train/02670.jpg new file mode 100644 index 0000000..8012cd3 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02670.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02680.jpg b/yolo_mindspore/dataset/mask/images/train/02680.jpg new file mode 100644 index 0000000..2249169 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02680.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02690.jpg b/yolo_mindspore/dataset/mask/images/train/02690.jpg new file mode 100644 index 0000000..dd1dcfa Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02690.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02700.jpg b/yolo_mindspore/dataset/mask/images/train/02700.jpg new file mode 100644 index 0000000..6ec148f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02700.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02710.jpg b/yolo_mindspore/dataset/mask/images/train/02710.jpg new file mode 100644 index 0000000..65cf6a5 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02710.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02720.jpg b/yolo_mindspore/dataset/mask/images/train/02720.jpg new file mode 100644 index 0000000..b76389e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02720.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02730.jpg b/yolo_mindspore/dataset/mask/images/train/02730.jpg new file mode 100644 index 0000000..eb7ec44 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02730.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02740.jpg b/yolo_mindspore/dataset/mask/images/train/02740.jpg new file mode 100644 index 0000000..b8b4ce2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02740.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02770.jpg b/yolo_mindspore/dataset/mask/images/train/02770.jpg new file mode 100644 index 0000000..43eb532 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02770.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02790.jpg b/yolo_mindspore/dataset/mask/images/train/02790.jpg new file mode 100644 index 0000000..5b50cb4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02790.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02800.jpg b/yolo_mindspore/dataset/mask/images/train/02800.jpg new file mode 100644 index 0000000..9e6e910 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02800.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02810.jpg b/yolo_mindspore/dataset/mask/images/train/02810.jpg new file mode 100644 index 0000000..97e4824 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02810.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02820.jpg b/yolo_mindspore/dataset/mask/images/train/02820.jpg new file mode 100644 index 0000000..91c8d57 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02820.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02830.jpg b/yolo_mindspore/dataset/mask/images/train/02830.jpg new file mode 100644 index 0000000..3e1914e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02830.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02840.jpg b/yolo_mindspore/dataset/mask/images/train/02840.jpg new file mode 100644 index 0000000..bf697af Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02840.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02850.jpg b/yolo_mindspore/dataset/mask/images/train/02850.jpg new file mode 100644 index 0000000..2ee8ebb Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02850.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02860.jpg b/yolo_mindspore/dataset/mask/images/train/02860.jpg new file mode 100644 index 0000000..29d6fff Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02860.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02870.jpg b/yolo_mindspore/dataset/mask/images/train/02870.jpg new file mode 100644 index 0000000..b269900 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02870.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02880.jpg b/yolo_mindspore/dataset/mask/images/train/02880.jpg new file mode 100644 index 0000000..1fab4a6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02880.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02890.jpg b/yolo_mindspore/dataset/mask/images/train/02890.jpg new file mode 100644 index 0000000..ca0c356 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02890.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02900.jpg b/yolo_mindspore/dataset/mask/images/train/02900.jpg new file mode 100644 index 0000000..b6eb47e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02900.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02930.jpg b/yolo_mindspore/dataset/mask/images/train/02930.jpg new file mode 100644 index 0000000..bc5a6a2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02930.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02940.jpg b/yolo_mindspore/dataset/mask/images/train/02940.jpg new file mode 100644 index 0000000..b71e20f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02940.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02950.jpg b/yolo_mindspore/dataset/mask/images/train/02950.jpg new file mode 100644 index 0000000..b28c8f1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02950.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02960.jpg b/yolo_mindspore/dataset/mask/images/train/02960.jpg new file mode 100644 index 0000000..47f2d3d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02960.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02970.jpg b/yolo_mindspore/dataset/mask/images/train/02970.jpg new file mode 100644 index 0000000..80318fb Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02970.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02980.jpg b/yolo_mindspore/dataset/mask/images/train/02980.jpg new file mode 100644 index 0000000..9d65af8 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02980.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/02990.jpg b/yolo_mindspore/dataset/mask/images/train/02990.jpg new file mode 100644 index 0000000..3d62cbb Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/02990.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03000.jpg b/yolo_mindspore/dataset/mask/images/train/03000.jpg new file mode 100644 index 0000000..9b8a4f7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03000.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03010.jpg b/yolo_mindspore/dataset/mask/images/train/03010.jpg new file mode 100644 index 0000000..ce58a35 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03010.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03020.jpg b/yolo_mindspore/dataset/mask/images/train/03020.jpg new file mode 100644 index 0000000..01f74d5 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03020.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03030.jpg b/yolo_mindspore/dataset/mask/images/train/03030.jpg new file mode 100644 index 0000000..84eb7e9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03030.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03040.jpg b/yolo_mindspore/dataset/mask/images/train/03040.jpg new file mode 100644 index 0000000..fa628c5 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03040.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03050.jpg b/yolo_mindspore/dataset/mask/images/train/03050.jpg new file mode 100644 index 0000000..42e405d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03050.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03060.jpg b/yolo_mindspore/dataset/mask/images/train/03060.jpg new file mode 100644 index 0000000..ca8f0fa Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03060.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03070.jpg b/yolo_mindspore/dataset/mask/images/train/03070.jpg new file mode 100644 index 0000000..e3c4a59 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03070.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03080.jpg b/yolo_mindspore/dataset/mask/images/train/03080.jpg new file mode 100644 index 0000000..a267caf Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03080.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03090.jpg b/yolo_mindspore/dataset/mask/images/train/03090.jpg new file mode 100644 index 0000000..82dbeac Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03090.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03100.jpg b/yolo_mindspore/dataset/mask/images/train/03100.jpg new file mode 100644 index 0000000..daa28c0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03100.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03110.jpg b/yolo_mindspore/dataset/mask/images/train/03110.jpg new file mode 100644 index 0000000..37fe406 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03110.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03120.jpg b/yolo_mindspore/dataset/mask/images/train/03120.jpg new file mode 100644 index 0000000..153be33 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03120.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03130.jpg b/yolo_mindspore/dataset/mask/images/train/03130.jpg new file mode 100644 index 0000000..ef899ea Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03130.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03140.jpg b/yolo_mindspore/dataset/mask/images/train/03140.jpg new file mode 100644 index 0000000..52ef496 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03140.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03150.jpg b/yolo_mindspore/dataset/mask/images/train/03150.jpg new file mode 100644 index 0000000..688688a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03150.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03160.jpg b/yolo_mindspore/dataset/mask/images/train/03160.jpg new file mode 100644 index 0000000..8554d27 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03160.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03180.jpg b/yolo_mindspore/dataset/mask/images/train/03180.jpg new file mode 100644 index 0000000..5cd7d6d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03180.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03190.jpg b/yolo_mindspore/dataset/mask/images/train/03190.jpg new file mode 100644 index 0000000..fc6ea8d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03190.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03200.jpg b/yolo_mindspore/dataset/mask/images/train/03200.jpg new file mode 100644 index 0000000..6ee2a07 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03200.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03210.jpg b/yolo_mindspore/dataset/mask/images/train/03210.jpg new file mode 100644 index 0000000..9219def Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03210.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03220.jpg b/yolo_mindspore/dataset/mask/images/train/03220.jpg new file mode 100644 index 0000000..42b5e35 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03220.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03230.jpg b/yolo_mindspore/dataset/mask/images/train/03230.jpg new file mode 100644 index 0000000..f06d550 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03230.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03240.jpg b/yolo_mindspore/dataset/mask/images/train/03240.jpg new file mode 100644 index 0000000..c916762 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03240.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03260.jpg b/yolo_mindspore/dataset/mask/images/train/03260.jpg new file mode 100644 index 0000000..287d6da Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03260.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03270.jpg b/yolo_mindspore/dataset/mask/images/train/03270.jpg new file mode 100644 index 0000000..f64e670 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03270.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03280.jpg b/yolo_mindspore/dataset/mask/images/train/03280.jpg new file mode 100644 index 0000000..9346c8b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03280.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03290.jpg b/yolo_mindspore/dataset/mask/images/train/03290.jpg new file mode 100644 index 0000000..4e0cd76 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03290.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03300.jpg b/yolo_mindspore/dataset/mask/images/train/03300.jpg new file mode 100644 index 0000000..6fa19cc Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03300.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03310.jpg b/yolo_mindspore/dataset/mask/images/train/03310.jpg new file mode 100644 index 0000000..af71af2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03310.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03320.jpg b/yolo_mindspore/dataset/mask/images/train/03320.jpg new file mode 100644 index 0000000..b375885 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03320.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03330.jpg b/yolo_mindspore/dataset/mask/images/train/03330.jpg new file mode 100644 index 0000000..f1f79cd Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03330.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03340.jpg b/yolo_mindspore/dataset/mask/images/train/03340.jpg new file mode 100644 index 0000000..3db8f70 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03340.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03350.jpg b/yolo_mindspore/dataset/mask/images/train/03350.jpg new file mode 100644 index 0000000..0d15d46 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03350.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03360.jpg b/yolo_mindspore/dataset/mask/images/train/03360.jpg new file mode 100644 index 0000000..e4caaa8 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03360.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03370.jpg b/yolo_mindspore/dataset/mask/images/train/03370.jpg new file mode 100644 index 0000000..8dbd5c5 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03370.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03380.jpg b/yolo_mindspore/dataset/mask/images/train/03380.jpg new file mode 100644 index 0000000..7e8593a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03380.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03390.jpg b/yolo_mindspore/dataset/mask/images/train/03390.jpg new file mode 100644 index 0000000..bbe02b9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03390.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03400.jpg b/yolo_mindspore/dataset/mask/images/train/03400.jpg new file mode 100644 index 0000000..e9b7f6c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03400.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03410.jpg b/yolo_mindspore/dataset/mask/images/train/03410.jpg new file mode 100644 index 0000000..ac81195 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03410.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03420.jpg b/yolo_mindspore/dataset/mask/images/train/03420.jpg new file mode 100644 index 0000000..0d3545b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03420.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03430.jpg b/yolo_mindspore/dataset/mask/images/train/03430.jpg new file mode 100644 index 0000000..04758c7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03430.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03440.jpg b/yolo_mindspore/dataset/mask/images/train/03440.jpg new file mode 100644 index 0000000..88b6b80 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03440.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03450.jpg b/yolo_mindspore/dataset/mask/images/train/03450.jpg new file mode 100644 index 0000000..cca4f04 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03450.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03460.jpg b/yolo_mindspore/dataset/mask/images/train/03460.jpg new file mode 100644 index 0000000..3aea2b4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03460.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03470.jpg b/yolo_mindspore/dataset/mask/images/train/03470.jpg new file mode 100644 index 0000000..6bfaa7a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03470.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03480.jpg b/yolo_mindspore/dataset/mask/images/train/03480.jpg new file mode 100644 index 0000000..a654eb0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03480.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03490.jpg b/yolo_mindspore/dataset/mask/images/train/03490.jpg new file mode 100644 index 0000000..0495116 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03490.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03500.jpg b/yolo_mindspore/dataset/mask/images/train/03500.jpg new file mode 100644 index 0000000..7addbca Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03500.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03510.jpg b/yolo_mindspore/dataset/mask/images/train/03510.jpg new file mode 100644 index 0000000..e77116e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03510.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03520.jpg b/yolo_mindspore/dataset/mask/images/train/03520.jpg new file mode 100644 index 0000000..f2888eb Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03520.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03530.jpg b/yolo_mindspore/dataset/mask/images/train/03530.jpg new file mode 100644 index 0000000..f3e1866 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03530.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03540.jpg b/yolo_mindspore/dataset/mask/images/train/03540.jpg new file mode 100644 index 0000000..93d2db6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03540.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03550.jpg b/yolo_mindspore/dataset/mask/images/train/03550.jpg new file mode 100644 index 0000000..c001e32 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03550.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03560.jpg b/yolo_mindspore/dataset/mask/images/train/03560.jpg new file mode 100644 index 0000000..4d1ed7b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03560.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03570.jpg b/yolo_mindspore/dataset/mask/images/train/03570.jpg new file mode 100644 index 0000000..4c56128 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03570.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03580.jpg b/yolo_mindspore/dataset/mask/images/train/03580.jpg new file mode 100644 index 0000000..71ab5af Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03580.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03590.jpg b/yolo_mindspore/dataset/mask/images/train/03590.jpg new file mode 100644 index 0000000..80ed9c1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03590.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03600.jpg b/yolo_mindspore/dataset/mask/images/train/03600.jpg new file mode 100644 index 0000000..dd3718a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03600.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03610.jpg b/yolo_mindspore/dataset/mask/images/train/03610.jpg new file mode 100644 index 0000000..2b06ca6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03610.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03620.jpg b/yolo_mindspore/dataset/mask/images/train/03620.jpg new file mode 100644 index 0000000..496116f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03620.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03640.jpg b/yolo_mindspore/dataset/mask/images/train/03640.jpg new file mode 100644 index 0000000..2c446ee Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03640.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03650.jpg b/yolo_mindspore/dataset/mask/images/train/03650.jpg new file mode 100644 index 0000000..e85e4b9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03650.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03660.jpg b/yolo_mindspore/dataset/mask/images/train/03660.jpg new file mode 100644 index 0000000..9f956e4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03660.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03670.jpg b/yolo_mindspore/dataset/mask/images/train/03670.jpg new file mode 100644 index 0000000..be98ce0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03670.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03690.jpg b/yolo_mindspore/dataset/mask/images/train/03690.jpg new file mode 100644 index 0000000..542a75f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03690.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03700.jpg b/yolo_mindspore/dataset/mask/images/train/03700.jpg new file mode 100644 index 0000000..a944053 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03700.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03710.jpg b/yolo_mindspore/dataset/mask/images/train/03710.jpg new file mode 100644 index 0000000..8181562 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03710.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03720.jpg b/yolo_mindspore/dataset/mask/images/train/03720.jpg new file mode 100644 index 0000000..f337cb9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03720.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03730.jpg b/yolo_mindspore/dataset/mask/images/train/03730.jpg new file mode 100644 index 0000000..62554e5 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03730.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03740.jpg b/yolo_mindspore/dataset/mask/images/train/03740.jpg new file mode 100644 index 0000000..7146e11 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03740.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03750.jpg b/yolo_mindspore/dataset/mask/images/train/03750.jpg new file mode 100644 index 0000000..8e6f56e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03750.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03760.jpg b/yolo_mindspore/dataset/mask/images/train/03760.jpg new file mode 100644 index 0000000..ea9e3ce Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03760.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03770.jpg b/yolo_mindspore/dataset/mask/images/train/03770.jpg new file mode 100644 index 0000000..9fbb51f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03770.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03780.jpg b/yolo_mindspore/dataset/mask/images/train/03780.jpg new file mode 100644 index 0000000..5e0f957 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03780.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03790.jpg b/yolo_mindspore/dataset/mask/images/train/03790.jpg new file mode 100644 index 0000000..613f7dc Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03790.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03800.jpg b/yolo_mindspore/dataset/mask/images/train/03800.jpg new file mode 100644 index 0000000..d2b66ce Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03800.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03810.jpg b/yolo_mindspore/dataset/mask/images/train/03810.jpg new file mode 100644 index 0000000..dc7ba24 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03810.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03820.jpg b/yolo_mindspore/dataset/mask/images/train/03820.jpg new file mode 100644 index 0000000..0cc47ce Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03820.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03830.jpg b/yolo_mindspore/dataset/mask/images/train/03830.jpg new file mode 100644 index 0000000..8ca5157 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03830.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03840.jpg b/yolo_mindspore/dataset/mask/images/train/03840.jpg new file mode 100644 index 0000000..804ad81 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03840.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03850.jpg b/yolo_mindspore/dataset/mask/images/train/03850.jpg new file mode 100644 index 0000000..ff8e160 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03850.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03860.jpg b/yolo_mindspore/dataset/mask/images/train/03860.jpg new file mode 100644 index 0000000..4dc6891 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03860.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03870.jpg b/yolo_mindspore/dataset/mask/images/train/03870.jpg new file mode 100644 index 0000000..2a298e7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03870.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03880.jpg b/yolo_mindspore/dataset/mask/images/train/03880.jpg new file mode 100644 index 0000000..b98bd9c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03880.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03890.jpg b/yolo_mindspore/dataset/mask/images/train/03890.jpg new file mode 100644 index 0000000..871791e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03890.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03900.jpg b/yolo_mindspore/dataset/mask/images/train/03900.jpg new file mode 100644 index 0000000..b846d0b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03900.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03910.jpg b/yolo_mindspore/dataset/mask/images/train/03910.jpg new file mode 100644 index 0000000..0d37c84 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03910.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03920.jpg b/yolo_mindspore/dataset/mask/images/train/03920.jpg new file mode 100644 index 0000000..bf1513d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03920.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03930.jpg b/yolo_mindspore/dataset/mask/images/train/03930.jpg new file mode 100644 index 0000000..3f43166 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03930.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03940.jpg b/yolo_mindspore/dataset/mask/images/train/03940.jpg new file mode 100644 index 0000000..4de6b5a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03940.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03950.jpg b/yolo_mindspore/dataset/mask/images/train/03950.jpg new file mode 100644 index 0000000..0f73e4f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03950.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03960.jpg b/yolo_mindspore/dataset/mask/images/train/03960.jpg new file mode 100644 index 0000000..75b2bce Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03960.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03980.jpg b/yolo_mindspore/dataset/mask/images/train/03980.jpg new file mode 100644 index 0000000..bfb9b0d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03980.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/03990.jpg b/yolo_mindspore/dataset/mask/images/train/03990.jpg new file mode 100644 index 0000000..33f605a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/03990.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04000.jpg b/yolo_mindspore/dataset/mask/images/train/04000.jpg new file mode 100644 index 0000000..863f88e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04000.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04010.jpg b/yolo_mindspore/dataset/mask/images/train/04010.jpg new file mode 100644 index 0000000..f45c67a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04010.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04020.jpg b/yolo_mindspore/dataset/mask/images/train/04020.jpg new file mode 100644 index 0000000..a482f15 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04020.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04030.jpg b/yolo_mindspore/dataset/mask/images/train/04030.jpg new file mode 100644 index 0000000..727e60f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04030.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04040.jpg b/yolo_mindspore/dataset/mask/images/train/04040.jpg new file mode 100644 index 0000000..f39e0b1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04040.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04050.jpg b/yolo_mindspore/dataset/mask/images/train/04050.jpg new file mode 100644 index 0000000..95b4377 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04050.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04060.jpg b/yolo_mindspore/dataset/mask/images/train/04060.jpg new file mode 100644 index 0000000..1d5dae7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04060.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04070.jpg b/yolo_mindspore/dataset/mask/images/train/04070.jpg new file mode 100644 index 0000000..890721b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04070.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04080.jpg b/yolo_mindspore/dataset/mask/images/train/04080.jpg new file mode 100644 index 0000000..687053e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04080.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04090.jpg b/yolo_mindspore/dataset/mask/images/train/04090.jpg new file mode 100644 index 0000000..1af51d6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04090.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04100.jpg b/yolo_mindspore/dataset/mask/images/train/04100.jpg new file mode 100644 index 0000000..a39625e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04100.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04110.jpg b/yolo_mindspore/dataset/mask/images/train/04110.jpg new file mode 100644 index 0000000..954f3e0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04110.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04120.jpg b/yolo_mindspore/dataset/mask/images/train/04120.jpg new file mode 100644 index 0000000..35210f8 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04120.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04130.jpg b/yolo_mindspore/dataset/mask/images/train/04130.jpg new file mode 100644 index 0000000..30b37b0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04130.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04140.jpg b/yolo_mindspore/dataset/mask/images/train/04140.jpg new file mode 100644 index 0000000..9cd0b5f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04140.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04150.jpg b/yolo_mindspore/dataset/mask/images/train/04150.jpg new file mode 100644 index 0000000..5b918f3 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04150.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04160.jpg b/yolo_mindspore/dataset/mask/images/train/04160.jpg new file mode 100644 index 0000000..37222c1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04160.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04170.jpg b/yolo_mindspore/dataset/mask/images/train/04170.jpg new file mode 100644 index 0000000..dcceaa0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04170.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04180.jpg b/yolo_mindspore/dataset/mask/images/train/04180.jpg new file mode 100644 index 0000000..12b15a4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04180.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04190.jpg b/yolo_mindspore/dataset/mask/images/train/04190.jpg new file mode 100644 index 0000000..89a87e6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04190.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04200.jpg b/yolo_mindspore/dataset/mask/images/train/04200.jpg new file mode 100644 index 0000000..6ec5b37 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04200.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04210.jpg b/yolo_mindspore/dataset/mask/images/train/04210.jpg new file mode 100644 index 0000000..95d916c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04210.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04220.jpg b/yolo_mindspore/dataset/mask/images/train/04220.jpg new file mode 100644 index 0000000..8a1a1f2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04220.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04230.jpg b/yolo_mindspore/dataset/mask/images/train/04230.jpg new file mode 100644 index 0000000..54f3400 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04230.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04240.jpg b/yolo_mindspore/dataset/mask/images/train/04240.jpg new file mode 100644 index 0000000..b7d54b2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04240.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04250.jpg b/yolo_mindspore/dataset/mask/images/train/04250.jpg new file mode 100644 index 0000000..a88cec1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04250.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04260.jpg b/yolo_mindspore/dataset/mask/images/train/04260.jpg new file mode 100644 index 0000000..2126a51 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04260.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04270.jpg b/yolo_mindspore/dataset/mask/images/train/04270.jpg new file mode 100644 index 0000000..d21ab63 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04270.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04280.jpg b/yolo_mindspore/dataset/mask/images/train/04280.jpg new file mode 100644 index 0000000..06af54c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04280.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04290.jpg b/yolo_mindspore/dataset/mask/images/train/04290.jpg new file mode 100644 index 0000000..ca4f432 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04290.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04300.jpg b/yolo_mindspore/dataset/mask/images/train/04300.jpg new file mode 100644 index 0000000..629f303 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04300.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04310.jpg b/yolo_mindspore/dataset/mask/images/train/04310.jpg new file mode 100644 index 0000000..9edeff9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04310.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04320.jpg b/yolo_mindspore/dataset/mask/images/train/04320.jpg new file mode 100644 index 0000000..897f897 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04320.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04330.jpg b/yolo_mindspore/dataset/mask/images/train/04330.jpg new file mode 100644 index 0000000..1bb0f66 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04330.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04340.jpg b/yolo_mindspore/dataset/mask/images/train/04340.jpg new file mode 100644 index 0000000..5b2f41b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04340.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04350.jpg b/yolo_mindspore/dataset/mask/images/train/04350.jpg new file mode 100644 index 0000000..72c575c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04350.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04360.jpg b/yolo_mindspore/dataset/mask/images/train/04360.jpg new file mode 100644 index 0000000..c309712 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04360.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04370.jpg b/yolo_mindspore/dataset/mask/images/train/04370.jpg new file mode 100644 index 0000000..ebffa81 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04370.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04380.jpg b/yolo_mindspore/dataset/mask/images/train/04380.jpg new file mode 100644 index 0000000..7121767 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04380.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04390.jpg b/yolo_mindspore/dataset/mask/images/train/04390.jpg new file mode 100644 index 0000000..f8502c4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04390.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04400.jpg b/yolo_mindspore/dataset/mask/images/train/04400.jpg new file mode 100644 index 0000000..b4abeb9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04400.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04410.jpg b/yolo_mindspore/dataset/mask/images/train/04410.jpg new file mode 100644 index 0000000..84f3b42 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04410.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04420.jpg b/yolo_mindspore/dataset/mask/images/train/04420.jpg new file mode 100644 index 0000000..fa4bc94 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04420.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04430.jpg b/yolo_mindspore/dataset/mask/images/train/04430.jpg new file mode 100644 index 0000000..01b4d79 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04430.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04440.jpg b/yolo_mindspore/dataset/mask/images/train/04440.jpg new file mode 100644 index 0000000..ee41516 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04440.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04450.jpg b/yolo_mindspore/dataset/mask/images/train/04450.jpg new file mode 100644 index 0000000..f629fed Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04450.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04460.jpg b/yolo_mindspore/dataset/mask/images/train/04460.jpg new file mode 100644 index 0000000..2a7ec40 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04460.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04470.jpg b/yolo_mindspore/dataset/mask/images/train/04470.jpg new file mode 100644 index 0000000..74d3d1b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04470.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04480.jpg b/yolo_mindspore/dataset/mask/images/train/04480.jpg new file mode 100644 index 0000000..b473f9b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04480.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04490.jpg b/yolo_mindspore/dataset/mask/images/train/04490.jpg new file mode 100644 index 0000000..b7ca14e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04490.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04500.jpg b/yolo_mindspore/dataset/mask/images/train/04500.jpg new file mode 100644 index 0000000..3078826 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04500.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04510.jpg b/yolo_mindspore/dataset/mask/images/train/04510.jpg new file mode 100644 index 0000000..5b01254 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04510.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04520.jpg b/yolo_mindspore/dataset/mask/images/train/04520.jpg new file mode 100644 index 0000000..2076ad1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04520.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04530.jpg b/yolo_mindspore/dataset/mask/images/train/04530.jpg new file mode 100644 index 0000000..42ceb07 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04530.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04540.jpg b/yolo_mindspore/dataset/mask/images/train/04540.jpg new file mode 100644 index 0000000..b583735 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04540.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04550.jpg b/yolo_mindspore/dataset/mask/images/train/04550.jpg new file mode 100644 index 0000000..0960c1b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04550.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04560.jpg b/yolo_mindspore/dataset/mask/images/train/04560.jpg new file mode 100644 index 0000000..e09c908 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04560.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04580.jpg b/yolo_mindspore/dataset/mask/images/train/04580.jpg new file mode 100644 index 0000000..d69bcba Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04580.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04590.jpg b/yolo_mindspore/dataset/mask/images/train/04590.jpg new file mode 100644 index 0000000..755e001 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04590.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04600.jpg b/yolo_mindspore/dataset/mask/images/train/04600.jpg new file mode 100644 index 0000000..17fab72 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04600.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04610.jpg b/yolo_mindspore/dataset/mask/images/train/04610.jpg new file mode 100644 index 0000000..7db3130 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04610.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04620.jpg b/yolo_mindspore/dataset/mask/images/train/04620.jpg new file mode 100644 index 0000000..4210bf7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04620.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04630.jpg b/yolo_mindspore/dataset/mask/images/train/04630.jpg new file mode 100644 index 0000000..5a03303 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04630.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04640.jpg b/yolo_mindspore/dataset/mask/images/train/04640.jpg new file mode 100644 index 0000000..6500ac9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04640.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04650.jpg b/yolo_mindspore/dataset/mask/images/train/04650.jpg new file mode 100644 index 0000000..f90373f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04650.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04660.jpg b/yolo_mindspore/dataset/mask/images/train/04660.jpg new file mode 100644 index 0000000..b850ccc Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04660.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04670.jpg b/yolo_mindspore/dataset/mask/images/train/04670.jpg new file mode 100644 index 0000000..a549700 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04670.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04690.jpg b/yolo_mindspore/dataset/mask/images/train/04690.jpg new file mode 100644 index 0000000..13ff6ea Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04690.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04720.jpg b/yolo_mindspore/dataset/mask/images/train/04720.jpg new file mode 100644 index 0000000..06cd5a0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04720.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04730.jpg b/yolo_mindspore/dataset/mask/images/train/04730.jpg new file mode 100644 index 0000000..9c47e09 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04730.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04740.jpg b/yolo_mindspore/dataset/mask/images/train/04740.jpg new file mode 100644 index 0000000..7b100e1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04740.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04750.jpg b/yolo_mindspore/dataset/mask/images/train/04750.jpg new file mode 100644 index 0000000..fa7c177 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04750.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04760.jpg b/yolo_mindspore/dataset/mask/images/train/04760.jpg new file mode 100644 index 0000000..5a6a700 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04760.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04770.jpg b/yolo_mindspore/dataset/mask/images/train/04770.jpg new file mode 100644 index 0000000..183b9db Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04770.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04780.jpg b/yolo_mindspore/dataset/mask/images/train/04780.jpg new file mode 100644 index 0000000..cddfc1f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04780.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04790.jpg b/yolo_mindspore/dataset/mask/images/train/04790.jpg new file mode 100644 index 0000000..776f713 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04790.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04800.jpg b/yolo_mindspore/dataset/mask/images/train/04800.jpg new file mode 100644 index 0000000..b1bae35 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04800.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04810.jpg b/yolo_mindspore/dataset/mask/images/train/04810.jpg new file mode 100644 index 0000000..f6abc4b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04810.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04820.jpg b/yolo_mindspore/dataset/mask/images/train/04820.jpg new file mode 100644 index 0000000..95705c0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04820.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04830.jpg b/yolo_mindspore/dataset/mask/images/train/04830.jpg new file mode 100644 index 0000000..a83a28b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04830.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04840.jpg b/yolo_mindspore/dataset/mask/images/train/04840.jpg new file mode 100644 index 0000000..2792c66 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04840.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04850.jpg b/yolo_mindspore/dataset/mask/images/train/04850.jpg new file mode 100644 index 0000000..85d73c2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04850.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04860.jpg b/yolo_mindspore/dataset/mask/images/train/04860.jpg new file mode 100644 index 0000000..66dfb6c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04860.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04870.jpg b/yolo_mindspore/dataset/mask/images/train/04870.jpg new file mode 100644 index 0000000..1d9d443 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04870.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04880.jpg b/yolo_mindspore/dataset/mask/images/train/04880.jpg new file mode 100644 index 0000000..ce6742b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04880.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04890.jpg b/yolo_mindspore/dataset/mask/images/train/04890.jpg new file mode 100644 index 0000000..d9790be Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04890.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04900.jpg b/yolo_mindspore/dataset/mask/images/train/04900.jpg new file mode 100644 index 0000000..891995b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04900.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04910.jpg b/yolo_mindspore/dataset/mask/images/train/04910.jpg new file mode 100644 index 0000000..c51e98b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04910.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04920.jpg b/yolo_mindspore/dataset/mask/images/train/04920.jpg new file mode 100644 index 0000000..17f63b3 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04920.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04930.jpg b/yolo_mindspore/dataset/mask/images/train/04930.jpg new file mode 100644 index 0000000..a6e0309 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04930.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04940.jpg b/yolo_mindspore/dataset/mask/images/train/04940.jpg new file mode 100644 index 0000000..970f994 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04940.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04960.jpg b/yolo_mindspore/dataset/mask/images/train/04960.jpg new file mode 100644 index 0000000..ff0a54d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04960.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04970.jpg b/yolo_mindspore/dataset/mask/images/train/04970.jpg new file mode 100644 index 0000000..a7d39b6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04970.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04980.jpg b/yolo_mindspore/dataset/mask/images/train/04980.jpg new file mode 100644 index 0000000..05ea934 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04980.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/04990.jpg b/yolo_mindspore/dataset/mask/images/train/04990.jpg new file mode 100644 index 0000000..dd30ac1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/04990.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05000.jpg b/yolo_mindspore/dataset/mask/images/train/05000.jpg new file mode 100644 index 0000000..1ff56f2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05000.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05010.jpg b/yolo_mindspore/dataset/mask/images/train/05010.jpg new file mode 100644 index 0000000..298f13f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05010.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05030.jpg b/yolo_mindspore/dataset/mask/images/train/05030.jpg new file mode 100644 index 0000000..76e24bd Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05030.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05040.jpg b/yolo_mindspore/dataset/mask/images/train/05040.jpg new file mode 100644 index 0000000..d3e0ff1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05040.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05050.jpg b/yolo_mindspore/dataset/mask/images/train/05050.jpg new file mode 100644 index 0000000..0e0946f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05050.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05060.jpg b/yolo_mindspore/dataset/mask/images/train/05060.jpg new file mode 100644 index 0000000..dc611f7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05060.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05070.jpg b/yolo_mindspore/dataset/mask/images/train/05070.jpg new file mode 100644 index 0000000..fa13b81 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05070.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05080.jpg b/yolo_mindspore/dataset/mask/images/train/05080.jpg new file mode 100644 index 0000000..c22f0c7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05080.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05090.jpg b/yolo_mindspore/dataset/mask/images/train/05090.jpg new file mode 100644 index 0000000..c0a6bbf Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05090.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05100.jpg b/yolo_mindspore/dataset/mask/images/train/05100.jpg new file mode 100644 index 0000000..502007f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05100.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05110.jpg b/yolo_mindspore/dataset/mask/images/train/05110.jpg new file mode 100644 index 0000000..3a52932 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05110.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05130.jpg b/yolo_mindspore/dataset/mask/images/train/05130.jpg new file mode 100644 index 0000000..9955d19 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05130.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05140.jpg b/yolo_mindspore/dataset/mask/images/train/05140.jpg new file mode 100644 index 0000000..e4c417e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05140.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05150.jpg b/yolo_mindspore/dataset/mask/images/train/05150.jpg new file mode 100644 index 0000000..5c5a2cb Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05150.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05160.jpg b/yolo_mindspore/dataset/mask/images/train/05160.jpg new file mode 100644 index 0000000..72eacc3 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05160.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05190.jpg b/yolo_mindspore/dataset/mask/images/train/05190.jpg new file mode 100644 index 0000000..423eee7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05190.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05200.jpg b/yolo_mindspore/dataset/mask/images/train/05200.jpg new file mode 100644 index 0000000..4baefd4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05200.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05210.jpg b/yolo_mindspore/dataset/mask/images/train/05210.jpg new file mode 100644 index 0000000..945ce72 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05210.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05220.jpg b/yolo_mindspore/dataset/mask/images/train/05220.jpg new file mode 100644 index 0000000..a9b5119 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05220.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05230.jpg b/yolo_mindspore/dataset/mask/images/train/05230.jpg new file mode 100644 index 0000000..7e8eb09 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05230.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05240.jpg b/yolo_mindspore/dataset/mask/images/train/05240.jpg new file mode 100644 index 0000000..9520a24 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05240.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05250.jpg b/yolo_mindspore/dataset/mask/images/train/05250.jpg new file mode 100644 index 0000000..fa0dbdb Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05250.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05260.jpg b/yolo_mindspore/dataset/mask/images/train/05260.jpg new file mode 100644 index 0000000..8e78616 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05260.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05270.jpg b/yolo_mindspore/dataset/mask/images/train/05270.jpg new file mode 100644 index 0000000..5d75978 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05270.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05280.jpg b/yolo_mindspore/dataset/mask/images/train/05280.jpg new file mode 100644 index 0000000..d8d9d24 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05280.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05290.jpg b/yolo_mindspore/dataset/mask/images/train/05290.jpg new file mode 100644 index 0000000..b9226b4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05290.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05300.jpg b/yolo_mindspore/dataset/mask/images/train/05300.jpg new file mode 100644 index 0000000..22059d7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05300.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05310.jpg b/yolo_mindspore/dataset/mask/images/train/05310.jpg new file mode 100644 index 0000000..2bb5904 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05310.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05320.jpg b/yolo_mindspore/dataset/mask/images/train/05320.jpg new file mode 100644 index 0000000..c45769e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05320.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05330.jpg b/yolo_mindspore/dataset/mask/images/train/05330.jpg new file mode 100644 index 0000000..d142014 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05330.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05340.jpg b/yolo_mindspore/dataset/mask/images/train/05340.jpg new file mode 100644 index 0000000..94f7390 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05340.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05350.jpg b/yolo_mindspore/dataset/mask/images/train/05350.jpg new file mode 100644 index 0000000..4a1d44f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05350.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05360.jpg b/yolo_mindspore/dataset/mask/images/train/05360.jpg new file mode 100644 index 0000000..acc9044 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05360.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05370.jpg b/yolo_mindspore/dataset/mask/images/train/05370.jpg new file mode 100644 index 0000000..d390646 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05370.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05380.jpg b/yolo_mindspore/dataset/mask/images/train/05380.jpg new file mode 100644 index 0000000..143aa27 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05380.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05390.jpg b/yolo_mindspore/dataset/mask/images/train/05390.jpg new file mode 100644 index 0000000..1f5e17c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05390.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05400.jpg b/yolo_mindspore/dataset/mask/images/train/05400.jpg new file mode 100644 index 0000000..9a40ca8 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05400.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05410.jpg b/yolo_mindspore/dataset/mask/images/train/05410.jpg new file mode 100644 index 0000000..30585f0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05410.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05420.jpg b/yolo_mindspore/dataset/mask/images/train/05420.jpg new file mode 100644 index 0000000..47d07cc Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05420.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05430.jpg b/yolo_mindspore/dataset/mask/images/train/05430.jpg new file mode 100644 index 0000000..96cbcdd Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05430.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05440.jpg b/yolo_mindspore/dataset/mask/images/train/05440.jpg new file mode 100644 index 0000000..f0b521f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05440.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05450.jpg b/yolo_mindspore/dataset/mask/images/train/05450.jpg new file mode 100644 index 0000000..a800e88 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05450.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05460.jpg b/yolo_mindspore/dataset/mask/images/train/05460.jpg new file mode 100644 index 0000000..cc3db1c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05460.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05480.jpg b/yolo_mindspore/dataset/mask/images/train/05480.jpg new file mode 100644 index 0000000..2581c3f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05480.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05490.jpg b/yolo_mindspore/dataset/mask/images/train/05490.jpg new file mode 100644 index 0000000..b0665e6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05490.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05500.jpg b/yolo_mindspore/dataset/mask/images/train/05500.jpg new file mode 100644 index 0000000..d1b8e63 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05500.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05510.jpg b/yolo_mindspore/dataset/mask/images/train/05510.jpg new file mode 100644 index 0000000..121f68f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05510.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05520.jpg b/yolo_mindspore/dataset/mask/images/train/05520.jpg new file mode 100644 index 0000000..6dc54e7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05520.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05530.jpg b/yolo_mindspore/dataset/mask/images/train/05530.jpg new file mode 100644 index 0000000..3114317 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05530.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05540.jpg b/yolo_mindspore/dataset/mask/images/train/05540.jpg new file mode 100644 index 0000000..a4ae5e8 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05540.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05550.jpg b/yolo_mindspore/dataset/mask/images/train/05550.jpg new file mode 100644 index 0000000..013387d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05550.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05560.jpg b/yolo_mindspore/dataset/mask/images/train/05560.jpg new file mode 100644 index 0000000..12b5227 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05560.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05570.jpg b/yolo_mindspore/dataset/mask/images/train/05570.jpg new file mode 100644 index 0000000..c19c70b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05570.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05590.jpg b/yolo_mindspore/dataset/mask/images/train/05590.jpg new file mode 100644 index 0000000..0ba3789 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05590.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05600.jpg b/yolo_mindspore/dataset/mask/images/train/05600.jpg new file mode 100644 index 0000000..b73013f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05600.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05610.jpg b/yolo_mindspore/dataset/mask/images/train/05610.jpg new file mode 100644 index 0000000..81217e4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05610.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05620.jpg b/yolo_mindspore/dataset/mask/images/train/05620.jpg new file mode 100644 index 0000000..cec388c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05620.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05630.jpg b/yolo_mindspore/dataset/mask/images/train/05630.jpg new file mode 100644 index 0000000..7ab7af4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05630.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05640.jpg b/yolo_mindspore/dataset/mask/images/train/05640.jpg new file mode 100644 index 0000000..816a6ba Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05640.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05650.jpg b/yolo_mindspore/dataset/mask/images/train/05650.jpg new file mode 100644 index 0000000..b5b6f57 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05650.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05660.jpg b/yolo_mindspore/dataset/mask/images/train/05660.jpg new file mode 100644 index 0000000..d6a021f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05660.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05670.jpg b/yolo_mindspore/dataset/mask/images/train/05670.jpg new file mode 100644 index 0000000..e5c3735 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05670.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05680.jpg b/yolo_mindspore/dataset/mask/images/train/05680.jpg new file mode 100644 index 0000000..dcbbb32 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05680.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05690.jpg b/yolo_mindspore/dataset/mask/images/train/05690.jpg new file mode 100644 index 0000000..53ebe45 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05690.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05700.jpg b/yolo_mindspore/dataset/mask/images/train/05700.jpg new file mode 100644 index 0000000..5f63665 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05700.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05710.jpg b/yolo_mindspore/dataset/mask/images/train/05710.jpg new file mode 100644 index 0000000..e11a3b5 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05710.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05720.jpg b/yolo_mindspore/dataset/mask/images/train/05720.jpg new file mode 100644 index 0000000..9671dcb Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05720.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05730.jpg b/yolo_mindspore/dataset/mask/images/train/05730.jpg new file mode 100644 index 0000000..6781cb9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05730.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05740.jpg b/yolo_mindspore/dataset/mask/images/train/05740.jpg new file mode 100644 index 0000000..4fcb344 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05740.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05750.jpg b/yolo_mindspore/dataset/mask/images/train/05750.jpg new file mode 100644 index 0000000..9dafbb6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05750.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05760.jpg b/yolo_mindspore/dataset/mask/images/train/05760.jpg new file mode 100644 index 0000000..a5c9dee Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05760.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05770.jpg b/yolo_mindspore/dataset/mask/images/train/05770.jpg new file mode 100644 index 0000000..04629a9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05770.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05780.jpg b/yolo_mindspore/dataset/mask/images/train/05780.jpg new file mode 100644 index 0000000..0f19b46 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05780.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05790.jpg b/yolo_mindspore/dataset/mask/images/train/05790.jpg new file mode 100644 index 0000000..bb8bc38 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05790.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05800.jpg b/yolo_mindspore/dataset/mask/images/train/05800.jpg new file mode 100644 index 0000000..1504c04 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05800.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05810.jpg b/yolo_mindspore/dataset/mask/images/train/05810.jpg new file mode 100644 index 0000000..9ad0922 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05810.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05820.jpg b/yolo_mindspore/dataset/mask/images/train/05820.jpg new file mode 100644 index 0000000..dde1bfa Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05820.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05830.jpg b/yolo_mindspore/dataset/mask/images/train/05830.jpg new file mode 100644 index 0000000..6c5e581 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05830.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05840.jpg b/yolo_mindspore/dataset/mask/images/train/05840.jpg new file mode 100644 index 0000000..fe1b362 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05840.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05860.jpg b/yolo_mindspore/dataset/mask/images/train/05860.jpg new file mode 100644 index 0000000..e93681a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05860.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05890.jpg b/yolo_mindspore/dataset/mask/images/train/05890.jpg new file mode 100644 index 0000000..85143c2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05890.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05900.jpg b/yolo_mindspore/dataset/mask/images/train/05900.jpg new file mode 100644 index 0000000..950bb0b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05900.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05910.jpg b/yolo_mindspore/dataset/mask/images/train/05910.jpg new file mode 100644 index 0000000..bf20f72 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05910.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05920.jpg b/yolo_mindspore/dataset/mask/images/train/05920.jpg new file mode 100644 index 0000000..f4e4310 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05920.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05930.jpg b/yolo_mindspore/dataset/mask/images/train/05930.jpg new file mode 100644 index 0000000..d937d1a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05930.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05940.jpg b/yolo_mindspore/dataset/mask/images/train/05940.jpg new file mode 100644 index 0000000..761b69a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05940.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05950.jpg b/yolo_mindspore/dataset/mask/images/train/05950.jpg new file mode 100644 index 0000000..c1aaa04 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05950.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05960.jpg b/yolo_mindspore/dataset/mask/images/train/05960.jpg new file mode 100644 index 0000000..601928d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05960.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05970.jpg b/yolo_mindspore/dataset/mask/images/train/05970.jpg new file mode 100644 index 0000000..7121098 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05970.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05980.jpg b/yolo_mindspore/dataset/mask/images/train/05980.jpg new file mode 100644 index 0000000..d921c14 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05980.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/05990.jpg b/yolo_mindspore/dataset/mask/images/train/05990.jpg new file mode 100644 index 0000000..80f0329 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/05990.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06010.jpg b/yolo_mindspore/dataset/mask/images/train/06010.jpg new file mode 100644 index 0000000..8cd1805 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06010.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06020.jpg b/yolo_mindspore/dataset/mask/images/train/06020.jpg new file mode 100644 index 0000000..ee11930 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06020.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06030.jpg b/yolo_mindspore/dataset/mask/images/train/06030.jpg new file mode 100644 index 0000000..2998b72 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06030.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06040.jpg b/yolo_mindspore/dataset/mask/images/train/06040.jpg new file mode 100644 index 0000000..2a2a4e5 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06040.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06050.jpg b/yolo_mindspore/dataset/mask/images/train/06050.jpg new file mode 100644 index 0000000..a137366 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06050.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06060.jpg b/yolo_mindspore/dataset/mask/images/train/06060.jpg new file mode 100644 index 0000000..53b4f5c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06060.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06070.jpg b/yolo_mindspore/dataset/mask/images/train/06070.jpg new file mode 100644 index 0000000..c4e4ec2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06070.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06080.jpg b/yolo_mindspore/dataset/mask/images/train/06080.jpg new file mode 100644 index 0000000..38b19c6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06080.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06090.jpg b/yolo_mindspore/dataset/mask/images/train/06090.jpg new file mode 100644 index 0000000..f03841e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06090.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06100.jpg b/yolo_mindspore/dataset/mask/images/train/06100.jpg new file mode 100644 index 0000000..d473707 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06100.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06110.jpg b/yolo_mindspore/dataset/mask/images/train/06110.jpg new file mode 100644 index 0000000..976de49 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06110.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06120.jpg b/yolo_mindspore/dataset/mask/images/train/06120.jpg new file mode 100644 index 0000000..2cf50ae Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06120.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06130.jpg b/yolo_mindspore/dataset/mask/images/train/06130.jpg new file mode 100644 index 0000000..455cd92 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06130.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06140.jpg b/yolo_mindspore/dataset/mask/images/train/06140.jpg new file mode 100644 index 0000000..781e9d7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06140.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06150.jpg b/yolo_mindspore/dataset/mask/images/train/06150.jpg new file mode 100644 index 0000000..7186e7e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06150.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06160.jpg b/yolo_mindspore/dataset/mask/images/train/06160.jpg new file mode 100644 index 0000000..87829d0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06160.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06170.jpg b/yolo_mindspore/dataset/mask/images/train/06170.jpg new file mode 100644 index 0000000..4ed46a6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06170.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06180.jpg b/yolo_mindspore/dataset/mask/images/train/06180.jpg new file mode 100644 index 0000000..4b2e888 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06180.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06200.jpg b/yolo_mindspore/dataset/mask/images/train/06200.jpg new file mode 100644 index 0000000..3834704 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06200.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06210.jpg b/yolo_mindspore/dataset/mask/images/train/06210.jpg new file mode 100644 index 0000000..0e096f9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06210.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06220.jpg b/yolo_mindspore/dataset/mask/images/train/06220.jpg new file mode 100644 index 0000000..92bdbb3 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06220.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06230.jpg b/yolo_mindspore/dataset/mask/images/train/06230.jpg new file mode 100644 index 0000000..50c0cf1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06230.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06250.jpg b/yolo_mindspore/dataset/mask/images/train/06250.jpg new file mode 100644 index 0000000..8b77fd7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06250.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06260.jpg b/yolo_mindspore/dataset/mask/images/train/06260.jpg new file mode 100644 index 0000000..eac49f1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06260.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06270.jpg b/yolo_mindspore/dataset/mask/images/train/06270.jpg new file mode 100644 index 0000000..6d6eead Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06270.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06280.jpg b/yolo_mindspore/dataset/mask/images/train/06280.jpg new file mode 100644 index 0000000..328a66b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06280.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06290.jpg b/yolo_mindspore/dataset/mask/images/train/06290.jpg new file mode 100644 index 0000000..de4c73e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06290.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06300.jpg b/yolo_mindspore/dataset/mask/images/train/06300.jpg new file mode 100644 index 0000000..1ac903f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06300.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06310.jpg b/yolo_mindspore/dataset/mask/images/train/06310.jpg new file mode 100644 index 0000000..5db5bf1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06310.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06320.jpg b/yolo_mindspore/dataset/mask/images/train/06320.jpg new file mode 100644 index 0000000..a824c8d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06320.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06330.jpg b/yolo_mindspore/dataset/mask/images/train/06330.jpg new file mode 100644 index 0000000..9e4cc84 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06330.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06340.jpg b/yolo_mindspore/dataset/mask/images/train/06340.jpg new file mode 100644 index 0000000..ec4d500 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06340.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06350.jpg b/yolo_mindspore/dataset/mask/images/train/06350.jpg new file mode 100644 index 0000000..d0c543d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06350.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06360.jpg b/yolo_mindspore/dataset/mask/images/train/06360.jpg new file mode 100644 index 0000000..ebaf74e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06360.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06370.jpg b/yolo_mindspore/dataset/mask/images/train/06370.jpg new file mode 100644 index 0000000..a687b12 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06370.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06380.jpg b/yolo_mindspore/dataset/mask/images/train/06380.jpg new file mode 100644 index 0000000..eb6c291 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06380.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06390.jpg b/yolo_mindspore/dataset/mask/images/train/06390.jpg new file mode 100644 index 0000000..8b924b2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06390.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06400.jpg b/yolo_mindspore/dataset/mask/images/train/06400.jpg new file mode 100644 index 0000000..300c02c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06400.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06410.jpg b/yolo_mindspore/dataset/mask/images/train/06410.jpg new file mode 100644 index 0000000..41d47cb Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06410.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06420.jpg b/yolo_mindspore/dataset/mask/images/train/06420.jpg new file mode 100644 index 0000000..4452d36 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06420.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06440.jpg b/yolo_mindspore/dataset/mask/images/train/06440.jpg new file mode 100644 index 0000000..3a4cb14 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06440.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06450.jpg b/yolo_mindspore/dataset/mask/images/train/06450.jpg new file mode 100644 index 0000000..f99f708 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06450.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06460.jpg b/yolo_mindspore/dataset/mask/images/train/06460.jpg new file mode 100644 index 0000000..2781d0a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06460.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06470.jpg b/yolo_mindspore/dataset/mask/images/train/06470.jpg new file mode 100644 index 0000000..dddec1b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06470.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06490.jpg b/yolo_mindspore/dataset/mask/images/train/06490.jpg new file mode 100644 index 0000000..a751919 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06490.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/train/06500.jpg b/yolo_mindspore/dataset/mask/images/train/06500.jpg new file mode 100644 index 0000000..7318660 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/train/06500.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0000.jpg b/yolo_mindspore/dataset/mask/images/val/0000.jpg new file mode 100644 index 0000000..243c08a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0000.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00000.jpg b/yolo_mindspore/dataset/mask/images/val/00000.jpg new file mode 100644 index 0000000..f69266b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00000.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0001.jpg b/yolo_mindspore/dataset/mask/images/val/0001.jpg new file mode 100644 index 0000000..72411c8 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0001.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00010.jpg b/yolo_mindspore/dataset/mask/images/val/00010.jpg new file mode 100644 index 0000000..63d41b5 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00010.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0003.jpg b/yolo_mindspore/dataset/mask/images/val/0003.jpg new file mode 100644 index 0000000..5aa6b16 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0003.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00030.jpg b/yolo_mindspore/dataset/mask/images/val/00030.jpg new file mode 100644 index 0000000..4f954c7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00030.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0004.jpg b/yolo_mindspore/dataset/mask/images/val/0004.jpg new file mode 100644 index 0000000..82ab1cb Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0004.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0006.jpg b/yolo_mindspore/dataset/mask/images/val/0006.jpg new file mode 100644 index 0000000..443a9ea Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0006.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00060.jpg b/yolo_mindspore/dataset/mask/images/val/00060.jpg new file mode 100644 index 0000000..acc0f3b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00060.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0007.jpg b/yolo_mindspore/dataset/mask/images/val/0007.jpg new file mode 100644 index 0000000..b1ab1ae Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0007.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00070.jpg b/yolo_mindspore/dataset/mask/images/val/00070.jpg new file mode 100644 index 0000000..037d5b3 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00070.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0009.jpg b/yolo_mindspore/dataset/mask/images/val/0009.jpg new file mode 100644 index 0000000..5399bec Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0009.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0010.jpg b/yolo_mindspore/dataset/mask/images/val/0010.jpg new file mode 100644 index 0000000..a0425df Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0010.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00100.jpg b/yolo_mindspore/dataset/mask/images/val/00100.jpg new file mode 100644 index 0000000..bc75ff3 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00100.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00130.jpg b/yolo_mindspore/dataset/mask/images/val/00130.jpg new file mode 100644 index 0000000..250cd3b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00130.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0015.jpg b/yolo_mindspore/dataset/mask/images/val/0015.jpg new file mode 100644 index 0000000..1ff0ce2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0015.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0016.jpg b/yolo_mindspore/dataset/mask/images/val/0016.jpg new file mode 100644 index 0000000..eda0e77 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0016.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0017.jpg b/yolo_mindspore/dataset/mask/images/val/0017.jpg new file mode 100644 index 0000000..815d0f0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0017.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0018.jpg b/yolo_mindspore/dataset/mask/images/val/0018.jpg new file mode 100644 index 0000000..ddaa0b4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0018.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0021.jpg b/yolo_mindspore/dataset/mask/images/val/0021.jpg new file mode 100644 index 0000000..8869829 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0021.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0023.jpg b/yolo_mindspore/dataset/mask/images/val/0023.jpg new file mode 100644 index 0000000..85e2cab Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0023.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0025.jpg b/yolo_mindspore/dataset/mask/images/val/0025.jpg new file mode 100644 index 0000000..1aa6b3b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0025.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0026.jpg b/yolo_mindspore/dataset/mask/images/val/0026.jpg new file mode 100644 index 0000000..b5f2aef Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0026.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0027.jpg b/yolo_mindspore/dataset/mask/images/val/0027.jpg new file mode 100644 index 0000000..347eebd Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0027.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0029.jpg b/yolo_mindspore/dataset/mask/images/val/0029.jpg new file mode 100644 index 0000000..b81007a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0029.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0032.jpg b/yolo_mindspore/dataset/mask/images/val/0032.jpg new file mode 100644 index 0000000..0ed9625 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0032.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0033.jpg b/yolo_mindspore/dataset/mask/images/val/0033.jpg new file mode 100644 index 0000000..4418aae Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0033.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0034.jpg b/yolo_mindspore/dataset/mask/images/val/0034.jpg new file mode 100644 index 0000000..a36e2aa Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0034.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0037.jpg b/yolo_mindspore/dataset/mask/images/val/0037.jpg new file mode 100644 index 0000000..546fab6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0037.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0038.jpg b/yolo_mindspore/dataset/mask/images/val/0038.jpg new file mode 100644 index 0000000..75ea3ab Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0038.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0039.jpg b/yolo_mindspore/dataset/mask/images/val/0039.jpg new file mode 100644 index 0000000..c1d8d10 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0039.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0041.jpg b/yolo_mindspore/dataset/mask/images/val/0041.jpg new file mode 100644 index 0000000..b25288b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0041.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0042.jpg b/yolo_mindspore/dataset/mask/images/val/0042.jpg new file mode 100644 index 0000000..d0e48f2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0042.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0045.jpg b/yolo_mindspore/dataset/mask/images/val/0045.jpg new file mode 100644 index 0000000..f134438 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0045.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0047.jpg b/yolo_mindspore/dataset/mask/images/val/0047.jpg new file mode 100644 index 0000000..86166f9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0047.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0051.jpg b/yolo_mindspore/dataset/mask/images/val/0051.jpg new file mode 100644 index 0000000..0c06d66 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0051.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0054.jpg b/yolo_mindspore/dataset/mask/images/val/0054.jpg new file mode 100644 index 0000000..56380df Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0054.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00550.jpg b/yolo_mindspore/dataset/mask/images/val/00550.jpg new file mode 100644 index 0000000..d720931 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00550.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00570.jpg b/yolo_mindspore/dataset/mask/images/val/00570.jpg new file mode 100644 index 0000000..303b557 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00570.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0058.jpg b/yolo_mindspore/dataset/mask/images/val/0058.jpg new file mode 100644 index 0000000..f7d8ab8 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0058.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0059.jpg b/yolo_mindspore/dataset/mask/images/val/0059.jpg new file mode 100644 index 0000000..9194f39 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0059.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00590.jpg b/yolo_mindspore/dataset/mask/images/val/00590.jpg new file mode 100644 index 0000000..1920ef8 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00590.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0060.jpg b/yolo_mindspore/dataset/mask/images/val/0060.jpg new file mode 100644 index 0000000..1c555ad Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0060.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00600.jpg b/yolo_mindspore/dataset/mask/images/val/00600.jpg new file mode 100644 index 0000000..e0bd454 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00600.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00620.jpg b/yolo_mindspore/dataset/mask/images/val/00620.jpg new file mode 100644 index 0000000..4fe9ad7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00620.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0064.jpg b/yolo_mindspore/dataset/mask/images/val/0064.jpg new file mode 100644 index 0000000..d45448c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0064.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00640.jpg b/yolo_mindspore/dataset/mask/images/val/00640.jpg new file mode 100644 index 0000000..0e33506 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00640.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0065.jpg b/yolo_mindspore/dataset/mask/images/val/0065.jpg new file mode 100644 index 0000000..26e44b0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0065.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00660.jpg b/yolo_mindspore/dataset/mask/images/val/00660.jpg new file mode 100644 index 0000000..b32f539 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00660.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0067.jpg b/yolo_mindspore/dataset/mask/images/val/0067.jpg new file mode 100644 index 0000000..23c607b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0067.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0069.jpg b/yolo_mindspore/dataset/mask/images/val/0069.jpg new file mode 100644 index 0000000..4037804 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0069.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00690.jpg b/yolo_mindspore/dataset/mask/images/val/00690.jpg new file mode 100644 index 0000000..fb8b9be Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00690.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00700.jpg b/yolo_mindspore/dataset/mask/images/val/00700.jpg new file mode 100644 index 0000000..75f62f4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00700.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0071.jpg b/yolo_mindspore/dataset/mask/images/val/0071.jpg new file mode 100644 index 0000000..6cd291c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0071.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00710.jpg b/yolo_mindspore/dataset/mask/images/val/00710.jpg new file mode 100644 index 0000000..817052d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00710.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0073.jpg b/yolo_mindspore/dataset/mask/images/val/0073.jpg new file mode 100644 index 0000000..1d651b7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0073.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00730.jpg b/yolo_mindspore/dataset/mask/images/val/00730.jpg new file mode 100644 index 0000000..e1b298a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00730.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00740.jpg b/yolo_mindspore/dataset/mask/images/val/00740.jpg new file mode 100644 index 0000000..36d3303 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00740.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0075.jpg b/yolo_mindspore/dataset/mask/images/val/0075.jpg new file mode 100644 index 0000000..5066a66 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0075.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0076.jpg b/yolo_mindspore/dataset/mask/images/val/0076.jpg new file mode 100644 index 0000000..e532fce Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0076.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0078.jpg b/yolo_mindspore/dataset/mask/images/val/0078.jpg new file mode 100644 index 0000000..b2ea5be Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0078.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00780.jpg b/yolo_mindspore/dataset/mask/images/val/00780.jpg new file mode 100644 index 0000000..aac3e6b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00780.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0081.jpg b/yolo_mindspore/dataset/mask/images/val/0081.jpg new file mode 100644 index 0000000..deea090 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0081.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00820.jpg b/yolo_mindspore/dataset/mask/images/val/00820.jpg new file mode 100644 index 0000000..e66c2ec Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00820.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0083.jpg b/yolo_mindspore/dataset/mask/images/val/0083.jpg new file mode 100644 index 0000000..da3cbab Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0083.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0084.jpg b/yolo_mindspore/dataset/mask/images/val/0084.jpg new file mode 100644 index 0000000..c92cd21 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0084.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00850.jpg b/yolo_mindspore/dataset/mask/images/val/00850.jpg new file mode 100644 index 0000000..2831ebd Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00850.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0086.jpg b/yolo_mindspore/dataset/mask/images/val/0086.jpg new file mode 100644 index 0000000..a7836b7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0086.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00860.jpg b/yolo_mindspore/dataset/mask/images/val/00860.jpg new file mode 100644 index 0000000..6f83680 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00860.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0092.jpg b/yolo_mindspore/dataset/mask/images/val/0092.jpg new file mode 100644 index 0000000..1f23833 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0092.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00920.jpg b/yolo_mindspore/dataset/mask/images/val/00920.jpg new file mode 100644 index 0000000..9819dd4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00920.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0093.jpg b/yolo_mindspore/dataset/mask/images/val/0093.jpg new file mode 100644 index 0000000..d9aeb07 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0093.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00940.jpg b/yolo_mindspore/dataset/mask/images/val/00940.jpg new file mode 100644 index 0000000..bcaa5ce Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00940.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00960.jpg b/yolo_mindspore/dataset/mask/images/val/00960.jpg new file mode 100644 index 0000000..c8f2341 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00960.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00970.jpg b/yolo_mindspore/dataset/mask/images/val/00970.jpg new file mode 100644 index 0000000..0f59259 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00970.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0098.jpg b/yolo_mindspore/dataset/mask/images/val/0098.jpg new file mode 100644 index 0000000..24502d4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0098.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/00990.jpg b/yolo_mindspore/dataset/mask/images/val/00990.jpg new file mode 100644 index 0000000..95bff24 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/00990.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01000.jpg b/yolo_mindspore/dataset/mask/images/val/01000.jpg new file mode 100644 index 0000000..fcdc58c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01000.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0101.jpg b/yolo_mindspore/dataset/mask/images/val/0101.jpg new file mode 100644 index 0000000..60f1cca Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0101.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01020.jpg b/yolo_mindspore/dataset/mask/images/val/01020.jpg new file mode 100644 index 0000000..07b207a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01020.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01030.jpg b/yolo_mindspore/dataset/mask/images/val/01030.jpg new file mode 100644 index 0000000..945127d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01030.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01040.jpg b/yolo_mindspore/dataset/mask/images/val/01040.jpg new file mode 100644 index 0000000..67148d0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01040.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01050.jpg b/yolo_mindspore/dataset/mask/images/val/01050.jpg new file mode 100644 index 0000000..1ec686f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01050.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01060.jpg b/yolo_mindspore/dataset/mask/images/val/01060.jpg new file mode 100644 index 0000000..cc04ae7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01060.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0107.jpg b/yolo_mindspore/dataset/mask/images/val/0107.jpg new file mode 100644 index 0000000..c0df404 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0107.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01070.jpg b/yolo_mindspore/dataset/mask/images/val/01070.jpg new file mode 100644 index 0000000..a07d117 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01070.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0108.jpg b/yolo_mindspore/dataset/mask/images/val/0108.jpg new file mode 100644 index 0000000..bd03794 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0108.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01080.jpg b/yolo_mindspore/dataset/mask/images/val/01080.jpg new file mode 100644 index 0000000..24ada68 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01080.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0109.jpg b/yolo_mindspore/dataset/mask/images/val/0109.jpg new file mode 100644 index 0000000..3b67ba8 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0109.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0110.jpg b/yolo_mindspore/dataset/mask/images/val/0110.jpg new file mode 100644 index 0000000..a2addc8 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0110.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0112.jpg b/yolo_mindspore/dataset/mask/images/val/0112.jpg new file mode 100644 index 0000000..ea961b8 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0112.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01120.jpg b/yolo_mindspore/dataset/mask/images/val/01120.jpg new file mode 100644 index 0000000..bc1b451 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01120.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0113.jpg b/yolo_mindspore/dataset/mask/images/val/0113.jpg new file mode 100644 index 0000000..91be3bf Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0113.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0114.jpg b/yolo_mindspore/dataset/mask/images/val/0114.jpg new file mode 100644 index 0000000..1c4c8a2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0114.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01150.jpg b/yolo_mindspore/dataset/mask/images/val/01150.jpg new file mode 100644 index 0000000..0d1bef6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01150.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0116.jpg b/yolo_mindspore/dataset/mask/images/val/0116.jpg new file mode 100644 index 0000000..e9fd742 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0116.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01160.jpg b/yolo_mindspore/dataset/mask/images/val/01160.jpg new file mode 100644 index 0000000..1b099aa Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01160.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01170.jpg b/yolo_mindspore/dataset/mask/images/val/01170.jpg new file mode 100644 index 0000000..a9f277c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01170.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01200.jpg b/yolo_mindspore/dataset/mask/images/val/01200.jpg new file mode 100644 index 0000000..ea83d8d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01200.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0121.jpg b/yolo_mindspore/dataset/mask/images/val/0121.jpg new file mode 100644 index 0000000..b1ce01e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0121.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01220.jpg b/yolo_mindspore/dataset/mask/images/val/01220.jpg new file mode 100644 index 0000000..37f0af9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01220.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0124.jpg b/yolo_mindspore/dataset/mask/images/val/0124.jpg new file mode 100644 index 0000000..f476b40 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0124.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0125.jpg b/yolo_mindspore/dataset/mask/images/val/0125.jpg new file mode 100644 index 0000000..656330a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0125.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0126.jpg b/yolo_mindspore/dataset/mask/images/val/0126.jpg new file mode 100644 index 0000000..793e64f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0126.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01260.jpg b/yolo_mindspore/dataset/mask/images/val/01260.jpg new file mode 100644 index 0000000..730f153 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01260.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0127.jpg b/yolo_mindspore/dataset/mask/images/val/0127.jpg new file mode 100644 index 0000000..d2316d0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0127.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/0128.jpg b/yolo_mindspore/dataset/mask/images/val/0128.jpg new file mode 100644 index 0000000..1332f88 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/0128.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01310.jpg b/yolo_mindspore/dataset/mask/images/val/01310.jpg new file mode 100644 index 0000000..a692213 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01310.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01330.jpg b/yolo_mindspore/dataset/mask/images/val/01330.jpg new file mode 100644 index 0000000..ed5a59c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01330.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01350.jpg b/yolo_mindspore/dataset/mask/images/val/01350.jpg new file mode 100644 index 0000000..f2c2fe1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01350.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01360.jpg b/yolo_mindspore/dataset/mask/images/val/01360.jpg new file mode 100644 index 0000000..9b38c3b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01360.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01380.jpg b/yolo_mindspore/dataset/mask/images/val/01380.jpg new file mode 100644 index 0000000..e7ac2f6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01380.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01400.jpg b/yolo_mindspore/dataset/mask/images/val/01400.jpg new file mode 100644 index 0000000..8a4b228 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01400.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01410.jpg b/yolo_mindspore/dataset/mask/images/val/01410.jpg new file mode 100644 index 0000000..a89997b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01410.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01420.jpg b/yolo_mindspore/dataset/mask/images/val/01420.jpg new file mode 100644 index 0000000..c48b979 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01420.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01450.jpg b/yolo_mindspore/dataset/mask/images/val/01450.jpg new file mode 100644 index 0000000..69442ec Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01450.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01460.jpg b/yolo_mindspore/dataset/mask/images/val/01460.jpg new file mode 100644 index 0000000..2eba945 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01460.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01470.jpg b/yolo_mindspore/dataset/mask/images/val/01470.jpg new file mode 100644 index 0000000..0d071ec Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01470.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01500.jpg b/yolo_mindspore/dataset/mask/images/val/01500.jpg new file mode 100644 index 0000000..5c46857 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01500.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01530.jpg b/yolo_mindspore/dataset/mask/images/val/01530.jpg new file mode 100644 index 0000000..8f0fd47 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01530.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01550.jpg b/yolo_mindspore/dataset/mask/images/val/01550.jpg new file mode 100644 index 0000000..146b2a2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01550.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01560.jpg b/yolo_mindspore/dataset/mask/images/val/01560.jpg new file mode 100644 index 0000000..ad6de5c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01560.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01580.jpg b/yolo_mindspore/dataset/mask/images/val/01580.jpg new file mode 100644 index 0000000..3906ed7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01580.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01590.jpg b/yolo_mindspore/dataset/mask/images/val/01590.jpg new file mode 100644 index 0000000..cd97e8b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01590.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01610.jpg b/yolo_mindspore/dataset/mask/images/val/01610.jpg new file mode 100644 index 0000000..4430422 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01610.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01620.jpg b/yolo_mindspore/dataset/mask/images/val/01620.jpg new file mode 100644 index 0000000..342807b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01620.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01630.jpg b/yolo_mindspore/dataset/mask/images/val/01630.jpg new file mode 100644 index 0000000..164d617 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01630.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01640.jpg b/yolo_mindspore/dataset/mask/images/val/01640.jpg new file mode 100644 index 0000000..4f67a22 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01640.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01650.jpg b/yolo_mindspore/dataset/mask/images/val/01650.jpg new file mode 100644 index 0000000..b5fd2c8 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01650.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01660.jpg b/yolo_mindspore/dataset/mask/images/val/01660.jpg new file mode 100644 index 0000000..5a75558 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01660.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01670.jpg b/yolo_mindspore/dataset/mask/images/val/01670.jpg new file mode 100644 index 0000000..c6f8cd2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01670.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01680.jpg b/yolo_mindspore/dataset/mask/images/val/01680.jpg new file mode 100644 index 0000000..2b4291e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01680.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01690.jpg b/yolo_mindspore/dataset/mask/images/val/01690.jpg new file mode 100644 index 0000000..6c47e0d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01690.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01700.jpg b/yolo_mindspore/dataset/mask/images/val/01700.jpg new file mode 100644 index 0000000..a9cd6fd Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01700.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01710.jpg b/yolo_mindspore/dataset/mask/images/val/01710.jpg new file mode 100644 index 0000000..f1cbc41 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01710.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01730.jpg b/yolo_mindspore/dataset/mask/images/val/01730.jpg new file mode 100644 index 0000000..a179931 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01730.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01740.jpg b/yolo_mindspore/dataset/mask/images/val/01740.jpg new file mode 100644 index 0000000..8988161 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01740.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01760.jpg b/yolo_mindspore/dataset/mask/images/val/01760.jpg new file mode 100644 index 0000000..703bb6d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01760.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01770.jpg b/yolo_mindspore/dataset/mask/images/val/01770.jpg new file mode 100644 index 0000000..4f31a3a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01770.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01780.jpg b/yolo_mindspore/dataset/mask/images/val/01780.jpg new file mode 100644 index 0000000..c0ae9a1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01780.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01800.jpg b/yolo_mindspore/dataset/mask/images/val/01800.jpg new file mode 100644 index 0000000..04974a6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01800.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01870.jpg b/yolo_mindspore/dataset/mask/images/val/01870.jpg new file mode 100644 index 0000000..0a8d2a0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01870.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01890.jpg b/yolo_mindspore/dataset/mask/images/val/01890.jpg new file mode 100644 index 0000000..c8bcb42 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01890.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01900.jpg b/yolo_mindspore/dataset/mask/images/val/01900.jpg new file mode 100644 index 0000000..fc0d150 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01900.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01910.jpg b/yolo_mindspore/dataset/mask/images/val/01910.jpg new file mode 100644 index 0000000..4cef5f7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01910.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01920.jpg b/yolo_mindspore/dataset/mask/images/val/01920.jpg new file mode 100644 index 0000000..f6193c5 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01920.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01960.jpg b/yolo_mindspore/dataset/mask/images/val/01960.jpg new file mode 100644 index 0000000..f7fd385 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01960.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01970.jpg b/yolo_mindspore/dataset/mask/images/val/01970.jpg new file mode 100644 index 0000000..ac51033 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01970.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01980.jpg b/yolo_mindspore/dataset/mask/images/val/01980.jpg new file mode 100644 index 0000000..7ae5349 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01980.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/01990.jpg b/yolo_mindspore/dataset/mask/images/val/01990.jpg new file mode 100644 index 0000000..0f6d66f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/01990.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02040.jpg b/yolo_mindspore/dataset/mask/images/val/02040.jpg new file mode 100644 index 0000000..8a7df18 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02040.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02080.jpg b/yolo_mindspore/dataset/mask/images/val/02080.jpg new file mode 100644 index 0000000..023aa61 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02080.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02100.jpg b/yolo_mindspore/dataset/mask/images/val/02100.jpg new file mode 100644 index 0000000..0f20009 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02100.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02130.jpg b/yolo_mindspore/dataset/mask/images/val/02130.jpg new file mode 100644 index 0000000..69d537d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02130.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02140.jpg b/yolo_mindspore/dataset/mask/images/val/02140.jpg new file mode 100644 index 0000000..cdaccaf Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02140.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02160.jpg b/yolo_mindspore/dataset/mask/images/val/02160.jpg new file mode 100644 index 0000000..b209353 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02160.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02170.jpg b/yolo_mindspore/dataset/mask/images/val/02170.jpg new file mode 100644 index 0000000..c538808 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02170.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02210.jpg b/yolo_mindspore/dataset/mask/images/val/02210.jpg new file mode 100644 index 0000000..b14339c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02210.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02240.jpg b/yolo_mindspore/dataset/mask/images/val/02240.jpg new file mode 100644 index 0000000..dda143a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02240.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02260.jpg b/yolo_mindspore/dataset/mask/images/val/02260.jpg new file mode 100644 index 0000000..4e22b49 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02260.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02280.jpg b/yolo_mindspore/dataset/mask/images/val/02280.jpg new file mode 100644 index 0000000..a30288a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02280.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02290.jpg b/yolo_mindspore/dataset/mask/images/val/02290.jpg new file mode 100644 index 0000000..d2154c0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02290.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02300.jpg b/yolo_mindspore/dataset/mask/images/val/02300.jpg new file mode 100644 index 0000000..ee819a6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02300.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02310.jpg b/yolo_mindspore/dataset/mask/images/val/02310.jpg new file mode 100644 index 0000000..b8d2a10 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02310.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02340.jpg b/yolo_mindspore/dataset/mask/images/val/02340.jpg new file mode 100644 index 0000000..14e99c3 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02340.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02350.jpg b/yolo_mindspore/dataset/mask/images/val/02350.jpg new file mode 100644 index 0000000..fb3ea24 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02350.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02370.jpg b/yolo_mindspore/dataset/mask/images/val/02370.jpg new file mode 100644 index 0000000..778bd27 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02370.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02380.jpg b/yolo_mindspore/dataset/mask/images/val/02380.jpg new file mode 100644 index 0000000..165675f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02380.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02400.jpg b/yolo_mindspore/dataset/mask/images/val/02400.jpg new file mode 100644 index 0000000..6ee852b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02400.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02420.jpg b/yolo_mindspore/dataset/mask/images/val/02420.jpg new file mode 100644 index 0000000..74d0f99 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02420.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02440.jpg b/yolo_mindspore/dataset/mask/images/val/02440.jpg new file mode 100644 index 0000000..9dd9c9f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02440.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02450.jpg b/yolo_mindspore/dataset/mask/images/val/02450.jpg new file mode 100644 index 0000000..2b3d494 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02450.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02490.jpg b/yolo_mindspore/dataset/mask/images/val/02490.jpg new file mode 100644 index 0000000..32b9caf Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02490.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02500.jpg b/yolo_mindspore/dataset/mask/images/val/02500.jpg new file mode 100644 index 0000000..9454f2f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02500.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02510.jpg b/yolo_mindspore/dataset/mask/images/val/02510.jpg new file mode 100644 index 0000000..72e927f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02510.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02520.jpg b/yolo_mindspore/dataset/mask/images/val/02520.jpg new file mode 100644 index 0000000..eb646d0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02520.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02530.jpg b/yolo_mindspore/dataset/mask/images/val/02530.jpg new file mode 100644 index 0000000..cfeaaa5 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02530.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02540.jpg b/yolo_mindspore/dataset/mask/images/val/02540.jpg new file mode 100644 index 0000000..f429bea Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02540.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02570.jpg b/yolo_mindspore/dataset/mask/images/val/02570.jpg new file mode 100644 index 0000000..633cf6d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02570.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02580.jpg b/yolo_mindspore/dataset/mask/images/val/02580.jpg new file mode 100644 index 0000000..c9cb83b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02580.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02600.jpg b/yolo_mindspore/dataset/mask/images/val/02600.jpg new file mode 100644 index 0000000..ac16237 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02600.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02610.jpg b/yolo_mindspore/dataset/mask/images/val/02610.jpg new file mode 100644 index 0000000..23afd1c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02610.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02630.jpg b/yolo_mindspore/dataset/mask/images/val/02630.jpg new file mode 100644 index 0000000..853effc Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02630.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02640.jpg b/yolo_mindspore/dataset/mask/images/val/02640.jpg new file mode 100644 index 0000000..8df9caa Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02640.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02650.jpg b/yolo_mindspore/dataset/mask/images/val/02650.jpg new file mode 100644 index 0000000..0270138 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02650.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02670.jpg b/yolo_mindspore/dataset/mask/images/val/02670.jpg new file mode 100644 index 0000000..8012cd3 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02670.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02710.jpg b/yolo_mindspore/dataset/mask/images/val/02710.jpg new file mode 100644 index 0000000..65cf6a5 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02710.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02720.jpg b/yolo_mindspore/dataset/mask/images/val/02720.jpg new file mode 100644 index 0000000..b76389e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02720.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02730.jpg b/yolo_mindspore/dataset/mask/images/val/02730.jpg new file mode 100644 index 0000000..eb7ec44 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02730.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02740.jpg b/yolo_mindspore/dataset/mask/images/val/02740.jpg new file mode 100644 index 0000000..b8b4ce2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02740.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02750.jpg b/yolo_mindspore/dataset/mask/images/val/02750.jpg new file mode 100644 index 0000000..35aba36 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02750.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02760.jpg b/yolo_mindspore/dataset/mask/images/val/02760.jpg new file mode 100644 index 0000000..dbc3995 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02760.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02780.jpg b/yolo_mindspore/dataset/mask/images/val/02780.jpg new file mode 100644 index 0000000..c97a230 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02780.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02800.jpg b/yolo_mindspore/dataset/mask/images/val/02800.jpg new file mode 100644 index 0000000..9e6e910 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02800.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02810.jpg b/yolo_mindspore/dataset/mask/images/val/02810.jpg new file mode 100644 index 0000000..97e4824 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02810.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02840.jpg b/yolo_mindspore/dataset/mask/images/val/02840.jpg new file mode 100644 index 0000000..bf697af Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02840.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02850.jpg b/yolo_mindspore/dataset/mask/images/val/02850.jpg new file mode 100644 index 0000000..2ee8ebb Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02850.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02860.jpg b/yolo_mindspore/dataset/mask/images/val/02860.jpg new file mode 100644 index 0000000..29d6fff Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02860.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02880.jpg b/yolo_mindspore/dataset/mask/images/val/02880.jpg new file mode 100644 index 0000000..1fab4a6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02880.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02890.jpg b/yolo_mindspore/dataset/mask/images/val/02890.jpg new file mode 100644 index 0000000..ca0c356 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02890.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02900.jpg b/yolo_mindspore/dataset/mask/images/val/02900.jpg new file mode 100644 index 0000000..b6eb47e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02900.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02910.jpg b/yolo_mindspore/dataset/mask/images/val/02910.jpg new file mode 100644 index 0000000..ba9676f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02910.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02920.jpg b/yolo_mindspore/dataset/mask/images/val/02920.jpg new file mode 100644 index 0000000..d515428 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02920.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02930.jpg b/yolo_mindspore/dataset/mask/images/val/02930.jpg new file mode 100644 index 0000000..bc5a6a2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02930.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02950.jpg b/yolo_mindspore/dataset/mask/images/val/02950.jpg new file mode 100644 index 0000000..b28c8f1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02950.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/02990.jpg b/yolo_mindspore/dataset/mask/images/val/02990.jpg new file mode 100644 index 0000000..3d62cbb Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/02990.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03030.jpg b/yolo_mindspore/dataset/mask/images/val/03030.jpg new file mode 100644 index 0000000..84eb7e9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03030.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03050.jpg b/yolo_mindspore/dataset/mask/images/val/03050.jpg new file mode 100644 index 0000000..42e405d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03050.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03060.jpg b/yolo_mindspore/dataset/mask/images/val/03060.jpg new file mode 100644 index 0000000..ca8f0fa Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03060.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03150.jpg b/yolo_mindspore/dataset/mask/images/val/03150.jpg new file mode 100644 index 0000000..688688a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03150.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03170.jpg b/yolo_mindspore/dataset/mask/images/val/03170.jpg new file mode 100644 index 0000000..e285584 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03170.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03180.jpg b/yolo_mindspore/dataset/mask/images/val/03180.jpg new file mode 100644 index 0000000..5cd7d6d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03180.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03250.jpg b/yolo_mindspore/dataset/mask/images/val/03250.jpg new file mode 100644 index 0000000..f5b0794 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03250.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03260.jpg b/yolo_mindspore/dataset/mask/images/val/03260.jpg new file mode 100644 index 0000000..287d6da Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03260.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03280.jpg b/yolo_mindspore/dataset/mask/images/val/03280.jpg new file mode 100644 index 0000000..9346c8b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03280.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03290.jpg b/yolo_mindspore/dataset/mask/images/val/03290.jpg new file mode 100644 index 0000000..4e0cd76 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03290.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03320.jpg b/yolo_mindspore/dataset/mask/images/val/03320.jpg new file mode 100644 index 0000000..b375885 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03320.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03330.jpg b/yolo_mindspore/dataset/mask/images/val/03330.jpg new file mode 100644 index 0000000..f1f79cd Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03330.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03340.jpg b/yolo_mindspore/dataset/mask/images/val/03340.jpg new file mode 100644 index 0000000..3db8f70 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03340.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03350.jpg b/yolo_mindspore/dataset/mask/images/val/03350.jpg new file mode 100644 index 0000000..0d15d46 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03350.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03370.jpg b/yolo_mindspore/dataset/mask/images/val/03370.jpg new file mode 100644 index 0000000..8dbd5c5 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03370.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03390.jpg b/yolo_mindspore/dataset/mask/images/val/03390.jpg new file mode 100644 index 0000000..bbe02b9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03390.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03410.jpg b/yolo_mindspore/dataset/mask/images/val/03410.jpg new file mode 100644 index 0000000..ac81195 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03410.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03430.jpg b/yolo_mindspore/dataset/mask/images/val/03430.jpg new file mode 100644 index 0000000..04758c7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03430.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03440.jpg b/yolo_mindspore/dataset/mask/images/val/03440.jpg new file mode 100644 index 0000000..88b6b80 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03440.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03460.jpg b/yolo_mindspore/dataset/mask/images/val/03460.jpg new file mode 100644 index 0000000..3aea2b4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03460.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03480.jpg b/yolo_mindspore/dataset/mask/images/val/03480.jpg new file mode 100644 index 0000000..a654eb0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03480.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03490.jpg b/yolo_mindspore/dataset/mask/images/val/03490.jpg new file mode 100644 index 0000000..0495116 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03490.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03520.jpg b/yolo_mindspore/dataset/mask/images/val/03520.jpg new file mode 100644 index 0000000..f2888eb Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03520.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03530.jpg b/yolo_mindspore/dataset/mask/images/val/03530.jpg new file mode 100644 index 0000000..f3e1866 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03530.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03580.jpg b/yolo_mindspore/dataset/mask/images/val/03580.jpg new file mode 100644 index 0000000..71ab5af Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03580.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03610.jpg b/yolo_mindspore/dataset/mask/images/val/03610.jpg new file mode 100644 index 0000000..2b06ca6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03610.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03630.jpg b/yolo_mindspore/dataset/mask/images/val/03630.jpg new file mode 100644 index 0000000..694fc0c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03630.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03650.jpg b/yolo_mindspore/dataset/mask/images/val/03650.jpg new file mode 100644 index 0000000..e85e4b9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03650.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03660.jpg b/yolo_mindspore/dataset/mask/images/val/03660.jpg new file mode 100644 index 0000000..9f956e4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03660.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03680.jpg b/yolo_mindspore/dataset/mask/images/val/03680.jpg new file mode 100644 index 0000000..5cb2e78 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03680.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03700.jpg b/yolo_mindspore/dataset/mask/images/val/03700.jpg new file mode 100644 index 0000000..a944053 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03700.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03710.jpg b/yolo_mindspore/dataset/mask/images/val/03710.jpg new file mode 100644 index 0000000..8181562 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03710.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03730.jpg b/yolo_mindspore/dataset/mask/images/val/03730.jpg new file mode 100644 index 0000000..62554e5 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03730.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03740.jpg b/yolo_mindspore/dataset/mask/images/val/03740.jpg new file mode 100644 index 0000000..7146e11 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03740.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03750.jpg b/yolo_mindspore/dataset/mask/images/val/03750.jpg new file mode 100644 index 0000000..8e6f56e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03750.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03760.jpg b/yolo_mindspore/dataset/mask/images/val/03760.jpg new file mode 100644 index 0000000..ea9e3ce Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03760.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03780.jpg b/yolo_mindspore/dataset/mask/images/val/03780.jpg new file mode 100644 index 0000000..5e0f957 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03780.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03800.jpg b/yolo_mindspore/dataset/mask/images/val/03800.jpg new file mode 100644 index 0000000..d2b66ce Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03800.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03810.jpg b/yolo_mindspore/dataset/mask/images/val/03810.jpg new file mode 100644 index 0000000..dc7ba24 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03810.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03840.jpg b/yolo_mindspore/dataset/mask/images/val/03840.jpg new file mode 100644 index 0000000..804ad81 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03840.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03890.jpg b/yolo_mindspore/dataset/mask/images/val/03890.jpg new file mode 100644 index 0000000..871791e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03890.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03920.jpg b/yolo_mindspore/dataset/mask/images/val/03920.jpg new file mode 100644 index 0000000..bf1513d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03920.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03940.jpg b/yolo_mindspore/dataset/mask/images/val/03940.jpg new file mode 100644 index 0000000..4de6b5a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03940.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03950.jpg b/yolo_mindspore/dataset/mask/images/val/03950.jpg new file mode 100644 index 0000000..0f73e4f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03950.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03970.jpg b/yolo_mindspore/dataset/mask/images/val/03970.jpg new file mode 100644 index 0000000..a0f6e24 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03970.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/03980.jpg b/yolo_mindspore/dataset/mask/images/val/03980.jpg new file mode 100644 index 0000000..bfb9b0d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/03980.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04000.jpg b/yolo_mindspore/dataset/mask/images/val/04000.jpg new file mode 100644 index 0000000..863f88e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04000.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04050.jpg b/yolo_mindspore/dataset/mask/images/val/04050.jpg new file mode 100644 index 0000000..95b4377 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04050.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04070.jpg b/yolo_mindspore/dataset/mask/images/val/04070.jpg new file mode 100644 index 0000000..890721b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04070.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04110.jpg b/yolo_mindspore/dataset/mask/images/val/04110.jpg new file mode 100644 index 0000000..954f3e0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04110.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04120.jpg b/yolo_mindspore/dataset/mask/images/val/04120.jpg new file mode 100644 index 0000000..35210f8 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04120.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04130.jpg b/yolo_mindspore/dataset/mask/images/val/04130.jpg new file mode 100644 index 0000000..30b37b0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04130.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04230.jpg b/yolo_mindspore/dataset/mask/images/val/04230.jpg new file mode 100644 index 0000000..54f3400 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04230.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04240.jpg b/yolo_mindspore/dataset/mask/images/val/04240.jpg new file mode 100644 index 0000000..b7d54b2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04240.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04260.jpg b/yolo_mindspore/dataset/mask/images/val/04260.jpg new file mode 100644 index 0000000..2126a51 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04260.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04290.jpg b/yolo_mindspore/dataset/mask/images/val/04290.jpg new file mode 100644 index 0000000..ca4f432 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04290.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04300.jpg b/yolo_mindspore/dataset/mask/images/val/04300.jpg new file mode 100644 index 0000000..629f303 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04300.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04320.jpg b/yolo_mindspore/dataset/mask/images/val/04320.jpg new file mode 100644 index 0000000..897f897 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04320.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04330.jpg b/yolo_mindspore/dataset/mask/images/val/04330.jpg new file mode 100644 index 0000000..1bb0f66 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04330.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04360.jpg b/yolo_mindspore/dataset/mask/images/val/04360.jpg new file mode 100644 index 0000000..c309712 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04360.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04380.jpg b/yolo_mindspore/dataset/mask/images/val/04380.jpg new file mode 100644 index 0000000..7121767 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04380.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04400.jpg b/yolo_mindspore/dataset/mask/images/val/04400.jpg new file mode 100644 index 0000000..b4abeb9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04400.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04410.jpg b/yolo_mindspore/dataset/mask/images/val/04410.jpg new file mode 100644 index 0000000..84f3b42 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04410.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04470.jpg b/yolo_mindspore/dataset/mask/images/val/04470.jpg new file mode 100644 index 0000000..74d3d1b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04470.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04490.jpg b/yolo_mindspore/dataset/mask/images/val/04490.jpg new file mode 100644 index 0000000..b7ca14e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04490.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04520.jpg b/yolo_mindspore/dataset/mask/images/val/04520.jpg new file mode 100644 index 0000000..2076ad1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04520.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04530.jpg b/yolo_mindspore/dataset/mask/images/val/04530.jpg new file mode 100644 index 0000000..42ceb07 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04530.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04540.jpg b/yolo_mindspore/dataset/mask/images/val/04540.jpg new file mode 100644 index 0000000..b583735 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04540.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04550.jpg b/yolo_mindspore/dataset/mask/images/val/04550.jpg new file mode 100644 index 0000000..0960c1b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04550.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04560.jpg b/yolo_mindspore/dataset/mask/images/val/04560.jpg new file mode 100644 index 0000000..e09c908 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04560.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04570.jpg b/yolo_mindspore/dataset/mask/images/val/04570.jpg new file mode 100644 index 0000000..7039668 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04570.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04580.jpg b/yolo_mindspore/dataset/mask/images/val/04580.jpg new file mode 100644 index 0000000..d69bcba Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04580.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04600.jpg b/yolo_mindspore/dataset/mask/images/val/04600.jpg new file mode 100644 index 0000000..17fab72 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04600.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04620.jpg b/yolo_mindspore/dataset/mask/images/val/04620.jpg new file mode 100644 index 0000000..4210bf7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04620.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04630.jpg b/yolo_mindspore/dataset/mask/images/val/04630.jpg new file mode 100644 index 0000000..5a03303 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04630.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04640.jpg b/yolo_mindspore/dataset/mask/images/val/04640.jpg new file mode 100644 index 0000000..6500ac9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04640.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04670.jpg b/yolo_mindspore/dataset/mask/images/val/04670.jpg new file mode 100644 index 0000000..a549700 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04670.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04680.jpg b/yolo_mindspore/dataset/mask/images/val/04680.jpg new file mode 100644 index 0000000..5ae5c59 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04680.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04700.jpg b/yolo_mindspore/dataset/mask/images/val/04700.jpg new file mode 100644 index 0000000..3c862b1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04700.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04710.jpg b/yolo_mindspore/dataset/mask/images/val/04710.jpg new file mode 100644 index 0000000..734d6bf Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04710.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04730.jpg b/yolo_mindspore/dataset/mask/images/val/04730.jpg new file mode 100644 index 0000000..9c47e09 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04730.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04740.jpg b/yolo_mindspore/dataset/mask/images/val/04740.jpg new file mode 100644 index 0000000..7b100e1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04740.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04760.jpg b/yolo_mindspore/dataset/mask/images/val/04760.jpg new file mode 100644 index 0000000..5a6a700 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04760.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04770.jpg b/yolo_mindspore/dataset/mask/images/val/04770.jpg new file mode 100644 index 0000000..183b9db Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04770.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04780.jpg b/yolo_mindspore/dataset/mask/images/val/04780.jpg new file mode 100644 index 0000000..cddfc1f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04780.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04810.jpg b/yolo_mindspore/dataset/mask/images/val/04810.jpg new file mode 100644 index 0000000..f6abc4b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04810.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04820.jpg b/yolo_mindspore/dataset/mask/images/val/04820.jpg new file mode 100644 index 0000000..95705c0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04820.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04840.jpg b/yolo_mindspore/dataset/mask/images/val/04840.jpg new file mode 100644 index 0000000..2792c66 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04840.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04850.jpg b/yolo_mindspore/dataset/mask/images/val/04850.jpg new file mode 100644 index 0000000..85d73c2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04850.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04860.jpg b/yolo_mindspore/dataset/mask/images/val/04860.jpg new file mode 100644 index 0000000..66dfb6c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04860.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04890.jpg b/yolo_mindspore/dataset/mask/images/val/04890.jpg new file mode 100644 index 0000000..d9790be Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04890.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04920.jpg b/yolo_mindspore/dataset/mask/images/val/04920.jpg new file mode 100644 index 0000000..17f63b3 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04920.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04930.jpg b/yolo_mindspore/dataset/mask/images/val/04930.jpg new file mode 100644 index 0000000..a6e0309 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04930.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04950.jpg b/yolo_mindspore/dataset/mask/images/val/04950.jpg new file mode 100644 index 0000000..c0c27db Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04950.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04960.jpg b/yolo_mindspore/dataset/mask/images/val/04960.jpg new file mode 100644 index 0000000..ff0a54d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04960.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04980.jpg b/yolo_mindspore/dataset/mask/images/val/04980.jpg new file mode 100644 index 0000000..05ea934 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04980.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/04990.jpg b/yolo_mindspore/dataset/mask/images/val/04990.jpg new file mode 100644 index 0000000..dd30ac1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/04990.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05020.jpg b/yolo_mindspore/dataset/mask/images/val/05020.jpg new file mode 100644 index 0000000..ceb0563 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05020.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05050.jpg b/yolo_mindspore/dataset/mask/images/val/05050.jpg new file mode 100644 index 0000000..0e0946f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05050.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05070.jpg b/yolo_mindspore/dataset/mask/images/val/05070.jpg new file mode 100644 index 0000000..fa13b81 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05070.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05080.jpg b/yolo_mindspore/dataset/mask/images/val/05080.jpg new file mode 100644 index 0000000..c22f0c7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05080.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05100.jpg b/yolo_mindspore/dataset/mask/images/val/05100.jpg new file mode 100644 index 0000000..502007f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05100.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05110.jpg b/yolo_mindspore/dataset/mask/images/val/05110.jpg new file mode 100644 index 0000000..3a52932 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05110.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05120.jpg b/yolo_mindspore/dataset/mask/images/val/05120.jpg new file mode 100644 index 0000000..a2d078c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05120.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05170.jpg b/yolo_mindspore/dataset/mask/images/val/05170.jpg new file mode 100644 index 0000000..11b1d0d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05170.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05180.jpg b/yolo_mindspore/dataset/mask/images/val/05180.jpg new file mode 100644 index 0000000..707dd86 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05180.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05190.jpg b/yolo_mindspore/dataset/mask/images/val/05190.jpg new file mode 100644 index 0000000..423eee7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05190.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05200.jpg b/yolo_mindspore/dataset/mask/images/val/05200.jpg new file mode 100644 index 0000000..4baefd4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05200.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05210.jpg b/yolo_mindspore/dataset/mask/images/val/05210.jpg new file mode 100644 index 0000000..945ce72 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05210.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05230.jpg b/yolo_mindspore/dataset/mask/images/val/05230.jpg new file mode 100644 index 0000000..7e8eb09 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05230.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05260.jpg b/yolo_mindspore/dataset/mask/images/val/05260.jpg new file mode 100644 index 0000000..8e78616 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05260.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05270.jpg b/yolo_mindspore/dataset/mask/images/val/05270.jpg new file mode 100644 index 0000000..5d75978 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05270.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05280.jpg b/yolo_mindspore/dataset/mask/images/val/05280.jpg new file mode 100644 index 0000000..d8d9d24 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05280.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05290.jpg b/yolo_mindspore/dataset/mask/images/val/05290.jpg new file mode 100644 index 0000000..b9226b4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05290.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05310.jpg b/yolo_mindspore/dataset/mask/images/val/05310.jpg new file mode 100644 index 0000000..2bb5904 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05310.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05320.jpg b/yolo_mindspore/dataset/mask/images/val/05320.jpg new file mode 100644 index 0000000..c45769e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05320.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05330.jpg b/yolo_mindspore/dataset/mask/images/val/05330.jpg new file mode 100644 index 0000000..d142014 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05330.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05350.jpg b/yolo_mindspore/dataset/mask/images/val/05350.jpg new file mode 100644 index 0000000..4a1d44f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05350.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05360.jpg b/yolo_mindspore/dataset/mask/images/val/05360.jpg new file mode 100644 index 0000000..acc9044 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05360.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05370.jpg b/yolo_mindspore/dataset/mask/images/val/05370.jpg new file mode 100644 index 0000000..d390646 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05370.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05400.jpg b/yolo_mindspore/dataset/mask/images/val/05400.jpg new file mode 100644 index 0000000..9a40ca8 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05400.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05420.jpg b/yolo_mindspore/dataset/mask/images/val/05420.jpg new file mode 100644 index 0000000..47d07cc Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05420.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05430.jpg b/yolo_mindspore/dataset/mask/images/val/05430.jpg new file mode 100644 index 0000000..96cbcdd Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05430.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05440.jpg b/yolo_mindspore/dataset/mask/images/val/05440.jpg new file mode 100644 index 0000000..f0b521f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05440.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05460.jpg b/yolo_mindspore/dataset/mask/images/val/05460.jpg new file mode 100644 index 0000000..cc3db1c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05460.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05470.jpg b/yolo_mindspore/dataset/mask/images/val/05470.jpg new file mode 100644 index 0000000..ec56c61 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05470.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05480.jpg b/yolo_mindspore/dataset/mask/images/val/05480.jpg new file mode 100644 index 0000000..2581c3f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05480.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05510.jpg b/yolo_mindspore/dataset/mask/images/val/05510.jpg new file mode 100644 index 0000000..121f68f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05510.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05520.jpg b/yolo_mindspore/dataset/mask/images/val/05520.jpg new file mode 100644 index 0000000..6dc54e7 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05520.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05530.jpg b/yolo_mindspore/dataset/mask/images/val/05530.jpg new file mode 100644 index 0000000..3114317 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05530.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05540.jpg b/yolo_mindspore/dataset/mask/images/val/05540.jpg new file mode 100644 index 0000000..a4ae5e8 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05540.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05550.jpg b/yolo_mindspore/dataset/mask/images/val/05550.jpg new file mode 100644 index 0000000..013387d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05550.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05580.jpg b/yolo_mindspore/dataset/mask/images/val/05580.jpg new file mode 100644 index 0000000..6de85fb Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05580.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05590.jpg b/yolo_mindspore/dataset/mask/images/val/05590.jpg new file mode 100644 index 0000000..0ba3789 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05590.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05610.jpg b/yolo_mindspore/dataset/mask/images/val/05610.jpg new file mode 100644 index 0000000..81217e4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05610.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05620.jpg b/yolo_mindspore/dataset/mask/images/val/05620.jpg new file mode 100644 index 0000000..cec388c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05620.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05630.jpg b/yolo_mindspore/dataset/mask/images/val/05630.jpg new file mode 100644 index 0000000..7ab7af4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05630.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05680.jpg b/yolo_mindspore/dataset/mask/images/val/05680.jpg new file mode 100644 index 0000000..dcbbb32 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05680.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05690.jpg b/yolo_mindspore/dataset/mask/images/val/05690.jpg new file mode 100644 index 0000000..53ebe45 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05690.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05700.jpg b/yolo_mindspore/dataset/mask/images/val/05700.jpg new file mode 100644 index 0000000..5f63665 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05700.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05710.jpg b/yolo_mindspore/dataset/mask/images/val/05710.jpg new file mode 100644 index 0000000..e11a3b5 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05710.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05730.jpg b/yolo_mindspore/dataset/mask/images/val/05730.jpg new file mode 100644 index 0000000..6781cb9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05730.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05760.jpg b/yolo_mindspore/dataset/mask/images/val/05760.jpg new file mode 100644 index 0000000..a5c9dee Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05760.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05770.jpg b/yolo_mindspore/dataset/mask/images/val/05770.jpg new file mode 100644 index 0000000..04629a9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05770.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05780.jpg b/yolo_mindspore/dataset/mask/images/val/05780.jpg new file mode 100644 index 0000000..0f19b46 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05780.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05790.jpg b/yolo_mindspore/dataset/mask/images/val/05790.jpg new file mode 100644 index 0000000..bb8bc38 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05790.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05840.jpg b/yolo_mindspore/dataset/mask/images/val/05840.jpg new file mode 100644 index 0000000..fe1b362 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05840.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05850.jpg b/yolo_mindspore/dataset/mask/images/val/05850.jpg new file mode 100644 index 0000000..fa6914f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05850.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05870.jpg b/yolo_mindspore/dataset/mask/images/val/05870.jpg new file mode 100644 index 0000000..6078110 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05870.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05880.jpg b/yolo_mindspore/dataset/mask/images/val/05880.jpg new file mode 100644 index 0000000..8f004e4 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05880.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05890.jpg b/yolo_mindspore/dataset/mask/images/val/05890.jpg new file mode 100644 index 0000000..85143c2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05890.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05910.jpg b/yolo_mindspore/dataset/mask/images/val/05910.jpg new file mode 100644 index 0000000..bf20f72 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05910.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05920.jpg b/yolo_mindspore/dataset/mask/images/val/05920.jpg new file mode 100644 index 0000000..f4e4310 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05920.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/05960.jpg b/yolo_mindspore/dataset/mask/images/val/05960.jpg new file mode 100644 index 0000000..601928d Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/05960.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06000.jpg b/yolo_mindspore/dataset/mask/images/val/06000.jpg new file mode 100644 index 0000000..d479e88 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06000.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06010.jpg b/yolo_mindspore/dataset/mask/images/val/06010.jpg new file mode 100644 index 0000000..8cd1805 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06010.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06030.jpg b/yolo_mindspore/dataset/mask/images/val/06030.jpg new file mode 100644 index 0000000..2998b72 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06030.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06050.jpg b/yolo_mindspore/dataset/mask/images/val/06050.jpg new file mode 100644 index 0000000..a137366 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06050.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06090.jpg b/yolo_mindspore/dataset/mask/images/val/06090.jpg new file mode 100644 index 0000000..f03841e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06090.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06110.jpg b/yolo_mindspore/dataset/mask/images/val/06110.jpg new file mode 100644 index 0000000..976de49 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06110.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06120.jpg b/yolo_mindspore/dataset/mask/images/val/06120.jpg new file mode 100644 index 0000000..2cf50ae Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06120.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06150.jpg b/yolo_mindspore/dataset/mask/images/val/06150.jpg new file mode 100644 index 0000000..7186e7e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06150.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06160.jpg b/yolo_mindspore/dataset/mask/images/val/06160.jpg new file mode 100644 index 0000000..87829d0 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06160.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06170.jpg b/yolo_mindspore/dataset/mask/images/val/06170.jpg new file mode 100644 index 0000000..4ed46a6 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06170.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06180.jpg b/yolo_mindspore/dataset/mask/images/val/06180.jpg new file mode 100644 index 0000000..4b2e888 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06180.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06190.jpg b/yolo_mindspore/dataset/mask/images/val/06190.jpg new file mode 100644 index 0000000..7bbc3bc Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06190.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06210.jpg b/yolo_mindspore/dataset/mask/images/val/06210.jpg new file mode 100644 index 0000000..0e096f9 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06210.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06240.jpg b/yolo_mindspore/dataset/mask/images/val/06240.jpg new file mode 100644 index 0000000..7e0dcde Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06240.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06260.jpg b/yolo_mindspore/dataset/mask/images/val/06260.jpg new file mode 100644 index 0000000..eac49f1 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06260.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06270.jpg b/yolo_mindspore/dataset/mask/images/val/06270.jpg new file mode 100644 index 0000000..6d6eead Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06270.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06280.jpg b/yolo_mindspore/dataset/mask/images/val/06280.jpg new file mode 100644 index 0000000..328a66b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06280.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06290.jpg b/yolo_mindspore/dataset/mask/images/val/06290.jpg new file mode 100644 index 0000000..de4c73e Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06290.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06300.jpg b/yolo_mindspore/dataset/mask/images/val/06300.jpg new file mode 100644 index 0000000..1ac903f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06300.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06340.jpg b/yolo_mindspore/dataset/mask/images/val/06340.jpg new file mode 100644 index 0000000..ec4d500 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06340.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06370.jpg b/yolo_mindspore/dataset/mask/images/val/06370.jpg new file mode 100644 index 0000000..a687b12 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06370.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06380.jpg b/yolo_mindspore/dataset/mask/images/val/06380.jpg new file mode 100644 index 0000000..eb6c291 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06380.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06390.jpg b/yolo_mindspore/dataset/mask/images/val/06390.jpg new file mode 100644 index 0000000..8b924b2 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06390.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06400.jpg b/yolo_mindspore/dataset/mask/images/val/06400.jpg new file mode 100644 index 0000000..300c02c Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06400.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06430.jpg b/yolo_mindspore/dataset/mask/images/val/06430.jpg new file mode 100644 index 0000000..008c80f Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06430.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06450.jpg b/yolo_mindspore/dataset/mask/images/val/06450.jpg new file mode 100644 index 0000000..f99f708 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06450.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06460.jpg b/yolo_mindspore/dataset/mask/images/val/06460.jpg new file mode 100644 index 0000000..2781d0a Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06460.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06470.jpg b/yolo_mindspore/dataset/mask/images/val/06470.jpg new file mode 100644 index 0000000..dddec1b Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06470.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06480.jpg b/yolo_mindspore/dataset/mask/images/val/06480.jpg new file mode 100644 index 0000000..eee9e91 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06480.jpg differ diff --git a/yolo_mindspore/dataset/mask/images/val/06490.jpg b/yolo_mindspore/dataset/mask/images/val/06490.jpg new file mode 100644 index 0000000..a751919 Binary files /dev/null and b/yolo_mindspore/dataset/mask/images/val/06490.jpg differ diff --git a/yolo_mindspore/dataset/mask/labels/train/0000.txt b/yolo_mindspore/dataset/mask/labels/train/0000.txt new file mode 100644 index 0000000..68d001a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0000.txt @@ -0,0 +1,2 @@ +31 0.243229 0.448148 0.105208 0.237037 +31 0.729167 0.469444 0.104167 0.172222 diff --git a/yolo_mindspore/dataset/mask/labels/train/00000.txt b/yolo_mindspore/dataset/mask/labels/train/00000.txt new file mode 100644 index 0000000..3dd783c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00000.txt @@ -0,0 +1 @@ +1 0.525 0.340625 0.16875 0.26875 diff --git a/yolo_mindspore/dataset/mask/labels/train/0001.txt b/yolo_mindspore/dataset/mask/labels/train/0001.txt new file mode 100644 index 0000000..feda27f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0001.txt @@ -0,0 +1 @@ +31 0.540625 0.474074 0.360417 0.814815 diff --git a/yolo_mindspore/dataset/mask/labels/train/00010.txt b/yolo_mindspore/dataset/mask/labels/train/00010.txt new file mode 100644 index 0000000..7559d42 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00010.txt @@ -0,0 +1,2 @@ +1 0.43994140625 0.1328125 0.1552734375 0.19921875 +1 0.62841796875 0.15234375 0.1337890625 0.1796875 diff --git a/yolo_mindspore/dataset/mask/labels/train/0002.txt b/yolo_mindspore/dataset/mask/labels/train/0002.txt new file mode 100644 index 0000000..484e4d7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0002.txt @@ -0,0 +1 @@ +31 0.403646 0.296296 0.188542 0.481481 diff --git a/yolo_mindspore/dataset/mask/labels/train/00020.txt b/yolo_mindspore/dataset/mask/labels/train/00020.txt new file mode 100644 index 0000000..9409736 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00020.txt @@ -0,0 +1 @@ +1 0.4375 0.18114063512637718 0.251953125 0.22099805573558004 diff --git a/yolo_mindspore/dataset/mask/labels/train/0003.txt b/yolo_mindspore/dataset/mask/labels/train/0003.txt new file mode 100644 index 0000000..b7663d3 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0003.txt @@ -0,0 +1 @@ +31 0.342708 0.386111 0.179167 0.305556 diff --git a/yolo_mindspore/dataset/mask/labels/train/00030.txt b/yolo_mindspore/dataset/mask/labels/train/00030.txt new file mode 100644 index 0000000..789131c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00030.txt @@ -0,0 +1,2 @@ +1 0.2509765625 0.19873046875 0.16796875 0.2158203125 +1 0.73193359375 0.16650390625 0.1474609375 0.1728515625 diff --git a/yolo_mindspore/dataset/mask/labels/train/00040.txt b/yolo_mindspore/dataset/mask/labels/train/00040.txt new file mode 100644 index 0000000..784f199 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00040.txt @@ -0,0 +1 @@ +1 0.5453125 0.48125 0.134375 0.20416666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/0005.txt b/yolo_mindspore/dataset/mask/labels/train/0005.txt new file mode 100644 index 0000000..7eab80d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0005.txt @@ -0,0 +1,2 @@ +31 0.315625 0.465741 0.077083 0.175926 +31 0.797396 0.180556 0.167708 0.235185 diff --git a/yolo_mindspore/dataset/mask/labels/train/00050.txt b/yolo_mindspore/dataset/mask/labels/train/00050.txt new file mode 100644 index 0000000..43120d3 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00050.txt @@ -0,0 +1 @@ +1 0.44287109375 0.39496527777777773 0.2607421875 0.5295138888888888 diff --git a/yolo_mindspore/dataset/mask/labels/train/0006.txt b/yolo_mindspore/dataset/mask/labels/train/0006.txt new file mode 100644 index 0000000..9f5aac2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0006.txt @@ -0,0 +1,2 @@ +31 0.278646 0.250926 0.134375 0.194444 +31 0.733333 0.471296 0.106250 0.216667 diff --git a/yolo_mindspore/dataset/mask/labels/train/00060.txt b/yolo_mindspore/dataset/mask/labels/train/00060.txt new file mode 100644 index 0000000..63d7698 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00060.txt @@ -0,0 +1 @@ +1 0.5671875000000001 0.43854166666666666 0.134375 0.20208333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/train/0007.txt b/yolo_mindspore/dataset/mask/labels/train/0007.txt new file mode 100644 index 0000000..a06f51b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0007.txt @@ -0,0 +1,11 @@ +31 0.073958 0.332407 0.068750 0.120370 +31 0.121354 0.500000 0.061458 0.137037 +31 0.213542 0.350000 0.066667 0.092593 +31 0.276562 0.538889 0.078125 0.111111 +31 0.369792 0.301852 0.060417 0.122222 +31 0.414583 0.514815 0.062500 0.144444 +31 0.475000 0.354630 0.039583 0.124074 +31 0.576042 0.384259 0.062500 0.124074 +31 0.633854 0.549074 0.051042 0.161111 +31 0.670312 0.342593 0.034375 0.140741 +31 0.836458 0.469444 0.089583 0.168519 diff --git a/yolo_mindspore/dataset/mask/labels/train/00070.txt b/yolo_mindspore/dataset/mask/labels/train/00070.txt new file mode 100644 index 0000000..7998f68 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00070.txt @@ -0,0 +1 @@ +1 0.35029940119760483 0.135 0.16167664670658682 0.126 diff --git a/yolo_mindspore/dataset/mask/labels/train/0008.txt b/yolo_mindspore/dataset/mask/labels/train/0008.txt new file mode 100644 index 0000000..56e7d82 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0008.txt @@ -0,0 +1 @@ +31 0.397396 0.410185 0.226042 0.509259 diff --git a/yolo_mindspore/dataset/mask/labels/train/00080.txt b/yolo_mindspore/dataset/mask/labels/train/00080.txt new file mode 100644 index 0000000..c649be9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00080.txt @@ -0,0 +1 @@ +1 0.52734375 0.5166666666666666 0.1640625 0.2708333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/0009.txt b/yolo_mindspore/dataset/mask/labels/train/0009.txt new file mode 100644 index 0000000..9f3187f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0009.txt @@ -0,0 +1 @@ +31 0.475521 0.375926 0.101042 0.166667 diff --git a/yolo_mindspore/dataset/mask/labels/train/00090.txt b/yolo_mindspore/dataset/mask/labels/train/00090.txt new file mode 100644 index 0000000..51f10bc --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00090.txt @@ -0,0 +1 @@ +1 0.53359375 0.38645833333333335 0.1765625 0.26458333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/train/00100.txt b/yolo_mindspore/dataset/mask/labels/train/00100.txt new file mode 100644 index 0000000..7c55a6a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00100.txt @@ -0,0 +1 @@ +1 0.49462890625 0.30006835269993165 0.5498046875 0.42378673957621327 diff --git a/yolo_mindspore/dataset/mask/labels/train/0011.txt b/yolo_mindspore/dataset/mask/labels/train/0011.txt new file mode 100644 index 0000000..e425af7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0011.txt @@ -0,0 +1 @@ +31 0.193229 0.411111 0.217708 0.437037 diff --git a/yolo_mindspore/dataset/mask/labels/train/0012.txt b/yolo_mindspore/dataset/mask/labels/train/0012.txt new file mode 100644 index 0000000..79629ce --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0012.txt @@ -0,0 +1 @@ +31 0.658333 0.337037 0.195833 0.525926 diff --git a/yolo_mindspore/dataset/mask/labels/train/0013.txt b/yolo_mindspore/dataset/mask/labels/train/0013.txt new file mode 100644 index 0000000..525e38e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0013.txt @@ -0,0 +1 @@ +31 0.507292 0.377778 0.166667 0.340741 diff --git a/yolo_mindspore/dataset/mask/labels/train/0014.txt b/yolo_mindspore/dataset/mask/labels/train/0014.txt new file mode 100644 index 0000000..b6c2088 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0014.txt @@ -0,0 +1,2 @@ +31 0.344271 0.278704 0.140625 0.361111 +31 0.674479 0.206481 0.217708 0.350000 diff --git a/yolo_mindspore/dataset/mask/labels/train/0016.txt b/yolo_mindspore/dataset/mask/labels/train/0016.txt new file mode 100644 index 0000000..9743ec8 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0016.txt @@ -0,0 +1 @@ +31 0.671875 0.322222 0.254167 0.581481 diff --git a/yolo_mindspore/dataset/mask/labels/train/0018.txt b/yolo_mindspore/dataset/mask/labels/train/0018.txt new file mode 100644 index 0000000..dffdfc5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0018.txt @@ -0,0 +1,2 @@ +31 0.324479 0.449074 0.153125 0.309259 +31 0.675000 0.489815 0.106250 0.309259 diff --git a/yolo_mindspore/dataset/mask/labels/train/0019.txt b/yolo_mindspore/dataset/mask/labels/train/0019.txt new file mode 100644 index 0000000..ae3400d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0019.txt @@ -0,0 +1,2 @@ +31 0.393750 0.327778 0.187500 0.281481 +31 0.560417 0.264815 0.108333 0.281481 diff --git a/yolo_mindspore/dataset/mask/labels/train/0020.txt b/yolo_mindspore/dataset/mask/labels/train/0020.txt new file mode 100644 index 0000000..65d90dc --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0020.txt @@ -0,0 +1 @@ +31 0.430729 0.292593 0.209375 0.462963 diff --git a/yolo_mindspore/dataset/mask/labels/train/0021.txt b/yolo_mindspore/dataset/mask/labels/train/0021.txt new file mode 100644 index 0000000..cf49f8d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0021.txt @@ -0,0 +1,2 @@ +31 0.346875 0.386111 0.235417 0.605556 +31 0.793750 0.333333 0.202083 0.555556 diff --git a/yolo_mindspore/dataset/mask/labels/train/0022.txt b/yolo_mindspore/dataset/mask/labels/train/0022.txt new file mode 100644 index 0000000..fe96e60 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0022.txt @@ -0,0 +1,2 @@ +31 0.295833 0.317593 0.106250 0.242593 +31 0.673438 0.356481 0.165625 0.253704 diff --git a/yolo_mindspore/dataset/mask/labels/train/0023.txt b/yolo_mindspore/dataset/mask/labels/train/0023.txt new file mode 100644 index 0000000..8c81536 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0023.txt @@ -0,0 +1 @@ +31 0.669271 0.373148 0.330208 0.701852 diff --git a/yolo_mindspore/dataset/mask/labels/train/0024.txt b/yolo_mindspore/dataset/mask/labels/train/0024.txt new file mode 100644 index 0000000..e61d8da --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0024.txt @@ -0,0 +1 @@ +31 0.609896 0.317593 0.178125 0.390741 diff --git a/yolo_mindspore/dataset/mask/labels/train/0025.txt b/yolo_mindspore/dataset/mask/labels/train/0025.txt new file mode 100644 index 0000000..a4627a3 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0025.txt @@ -0,0 +1 @@ +31 0.369271 0.471296 0.380208 0.850000 diff --git a/yolo_mindspore/dataset/mask/labels/train/0026.txt b/yolo_mindspore/dataset/mask/labels/train/0026.txt new file mode 100644 index 0000000..f35b6a9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0026.txt @@ -0,0 +1 @@ +31 0.539062 0.337037 0.255208 0.551852 diff --git a/yolo_mindspore/dataset/mask/labels/train/0027.txt b/yolo_mindspore/dataset/mask/labels/train/0027.txt new file mode 100644 index 0000000..f9c6809 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0027.txt @@ -0,0 +1 @@ +31 0.491146 0.367593 0.219792 0.501852 diff --git a/yolo_mindspore/dataset/mask/labels/train/0028.txt b/yolo_mindspore/dataset/mask/labels/train/0028.txt new file mode 100644 index 0000000..c21afd2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0028.txt @@ -0,0 +1 @@ +31 0.393229 0.471296 0.155208 0.420370 diff --git a/yolo_mindspore/dataset/mask/labels/train/0029.txt b/yolo_mindspore/dataset/mask/labels/train/0029.txt new file mode 100644 index 0000000..dc05c47 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0029.txt @@ -0,0 +1 @@ +31 0.488021 0.421296 0.188542 0.553704 diff --git a/yolo_mindspore/dataset/mask/labels/train/0030.txt b/yolo_mindspore/dataset/mask/labels/train/0030.txt new file mode 100644 index 0000000..9fd1545 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0030.txt @@ -0,0 +1 @@ +31 0.454167 0.297222 0.164583 0.346296 diff --git a/yolo_mindspore/dataset/mask/labels/train/0031.txt b/yolo_mindspore/dataset/mask/labels/train/0031.txt new file mode 100644 index 0000000..ca17d01 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0031.txt @@ -0,0 +1 @@ +31 0.407813 0.362963 0.280208 0.562963 diff --git a/yolo_mindspore/dataset/mask/labels/train/0032.txt b/yolo_mindspore/dataset/mask/labels/train/0032.txt new file mode 100644 index 0000000..e2f43df --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0032.txt @@ -0,0 +1 @@ +31 0.385937 0.184259 0.198958 0.342593 diff --git a/yolo_mindspore/dataset/mask/labels/train/0033.txt b/yolo_mindspore/dataset/mask/labels/train/0033.txt new file mode 100644 index 0000000..d409849 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0033.txt @@ -0,0 +1 @@ +31 0.726042 0.384259 0.220833 0.461111 diff --git a/yolo_mindspore/dataset/mask/labels/train/0034.txt b/yolo_mindspore/dataset/mask/labels/train/0034.txt new file mode 100644 index 0000000..c9618a9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0034.txt @@ -0,0 +1 @@ +31 0.375000 0.358333 0.320833 0.494444 diff --git a/yolo_mindspore/dataset/mask/labels/train/0035.txt b/yolo_mindspore/dataset/mask/labels/train/0035.txt new file mode 100644 index 0000000..dad3b77 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0035.txt @@ -0,0 +1 @@ +31 0.476042 0.375000 0.214583 0.438889 diff --git a/yolo_mindspore/dataset/mask/labels/train/0036.txt b/yolo_mindspore/dataset/mask/labels/train/0036.txt new file mode 100644 index 0000000..ce83756 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0036.txt @@ -0,0 +1 @@ +31 0.468229 0.266667 0.176042 0.433333 diff --git a/yolo_mindspore/dataset/mask/labels/train/0037.txt b/yolo_mindspore/dataset/mask/labels/train/0037.txt new file mode 100644 index 0000000..e4b68f7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0037.txt @@ -0,0 +1 @@ +31 0.505729 0.389815 0.163542 0.316667 diff --git a/yolo_mindspore/dataset/mask/labels/train/0039.txt b/yolo_mindspore/dataset/mask/labels/train/0039.txt new file mode 100644 index 0000000..fca5d68 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0039.txt @@ -0,0 +1 @@ +31 0.500000 0.358333 0.172917 0.372222 diff --git a/yolo_mindspore/dataset/mask/labels/train/0040.txt b/yolo_mindspore/dataset/mask/labels/train/0040.txt new file mode 100644 index 0000000..14716a4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0040.txt @@ -0,0 +1 @@ +31 0.500521 0.416667 0.221875 0.592593 diff --git a/yolo_mindspore/dataset/mask/labels/train/0041.txt b/yolo_mindspore/dataset/mask/labels/train/0041.txt new file mode 100644 index 0000000..4b99aa7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0041.txt @@ -0,0 +1 @@ +31 0.470833 0.336111 0.150000 0.390741 diff --git a/yolo_mindspore/dataset/mask/labels/train/0042.txt b/yolo_mindspore/dataset/mask/labels/train/0042.txt new file mode 100644 index 0000000..e1f00a3 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0042.txt @@ -0,0 +1 @@ +31 0.672396 0.378704 0.365625 0.746296 diff --git a/yolo_mindspore/dataset/mask/labels/train/0043.txt b/yolo_mindspore/dataset/mask/labels/train/0043.txt new file mode 100644 index 0000000..7ea84ec --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0043.txt @@ -0,0 +1 @@ +31 0.537500 0.312037 0.145833 0.290741 diff --git a/yolo_mindspore/dataset/mask/labels/train/0044.txt b/yolo_mindspore/dataset/mask/labels/train/0044.txt new file mode 100644 index 0000000..cf8de61 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0044.txt @@ -0,0 +1 @@ +31 0.547917 0.370370 0.318750 0.603704 diff --git a/yolo_mindspore/dataset/mask/labels/train/0045.txt b/yolo_mindspore/dataset/mask/labels/train/0045.txt new file mode 100644 index 0000000..c343131 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0045.txt @@ -0,0 +1 @@ +31 0.404167 0.515741 0.306250 0.772222 diff --git a/yolo_mindspore/dataset/mask/labels/train/0046.txt b/yolo_mindspore/dataset/mask/labels/train/0046.txt new file mode 100644 index 0000000..cf60ccb --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0046.txt @@ -0,0 +1 @@ +31 0.453125 0.448148 0.302083 0.722222 diff --git a/yolo_mindspore/dataset/mask/labels/train/0047.txt b/yolo_mindspore/dataset/mask/labels/train/0047.txt new file mode 100644 index 0000000..a23bbff --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0047.txt @@ -0,0 +1 @@ +31 0.400000 0.349074 0.227083 0.505556 diff --git a/yolo_mindspore/dataset/mask/labels/train/0048.txt b/yolo_mindspore/dataset/mask/labels/train/0048.txt new file mode 100644 index 0000000..fccc776 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0048.txt @@ -0,0 +1 @@ +31 0.513021 0.505556 0.080208 0.192593 diff --git a/yolo_mindspore/dataset/mask/labels/train/0049.txt b/yolo_mindspore/dataset/mask/labels/train/0049.txt new file mode 100644 index 0000000..fa24283 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0049.txt @@ -0,0 +1 @@ +31 0.568750 0.356481 0.266667 0.590741 diff --git a/yolo_mindspore/dataset/mask/labels/train/0050.txt b/yolo_mindspore/dataset/mask/labels/train/0050.txt new file mode 100644 index 0000000..9f30f89 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0050.txt @@ -0,0 +1 @@ +31 0.585417 0.330556 0.177083 0.442593 diff --git a/yolo_mindspore/dataset/mask/labels/train/0051.txt b/yolo_mindspore/dataset/mask/labels/train/0051.txt new file mode 100644 index 0000000..47510ff --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0051.txt @@ -0,0 +1 @@ +31 0.255729 0.343519 0.307292 0.598148 diff --git a/yolo_mindspore/dataset/mask/labels/train/0052.txt b/yolo_mindspore/dataset/mask/labels/train/0052.txt new file mode 100644 index 0000000..fcf8e4f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0052.txt @@ -0,0 +1 @@ +31 0.509375 0.443519 0.200000 0.416667 diff --git a/yolo_mindspore/dataset/mask/labels/train/00520.txt b/yolo_mindspore/dataset/mask/labels/train/00520.txt new file mode 100644 index 0000000..66ac8dc --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00520.txt @@ -0,0 +1 @@ +1 0.5359375000000001 0.3229166666666667 0.19687500000000002 0.3375 diff --git a/yolo_mindspore/dataset/mask/labels/train/0053.txt b/yolo_mindspore/dataset/mask/labels/train/0053.txt new file mode 100644 index 0000000..0db072b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0053.txt @@ -0,0 +1 @@ +31 0.488021 0.423148 0.280208 0.527778 diff --git a/yolo_mindspore/dataset/mask/labels/train/00530.txt b/yolo_mindspore/dataset/mask/labels/train/00530.txt new file mode 100644 index 0000000..e37eaa1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00530.txt @@ -0,0 +1 @@ +1 0.44677734375 0.265625 0.1201171875 0.2421875 diff --git a/yolo_mindspore/dataset/mask/labels/train/0054.txt b/yolo_mindspore/dataset/mask/labels/train/0054.txt new file mode 100644 index 0000000..a9bd781 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0054.txt @@ -0,0 +1 @@ +31 0.529687 0.254630 0.136458 0.290741 diff --git a/yolo_mindspore/dataset/mask/labels/train/00540.txt b/yolo_mindspore/dataset/mask/labels/train/00540.txt new file mode 100644 index 0000000..a25b99c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00540.txt @@ -0,0 +1 @@ +1 0.51220703125 0.2770618556701031 0.3896484375 0.33118556701030927 diff --git a/yolo_mindspore/dataset/mask/labels/train/0055.txt b/yolo_mindspore/dataset/mask/labels/train/0055.txt new file mode 100644 index 0000000..3f35f35 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0055.txt @@ -0,0 +1 @@ +31 0.440104 0.473148 0.182292 0.405556 diff --git a/yolo_mindspore/dataset/mask/labels/train/0056.txt b/yolo_mindspore/dataset/mask/labels/train/0056.txt new file mode 100644 index 0000000..e3f0a9f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0056.txt @@ -0,0 +1 @@ +31 0.429688 0.287037 0.151042 0.381481 diff --git a/yolo_mindspore/dataset/mask/labels/train/00560.txt b/yolo_mindspore/dataset/mask/labels/train/00560.txt new file mode 100644 index 0000000..5111629 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00560.txt @@ -0,0 +1 @@ +1 0.2744140625 0.2982398956975228 0.458984375 0.43089960886571055 diff --git a/yolo_mindspore/dataset/mask/labels/train/0057.txt b/yolo_mindspore/dataset/mask/labels/train/0057.txt new file mode 100644 index 0000000..433349c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0057.txt @@ -0,0 +1 @@ +31 0.434375 0.361111 0.310417 0.600000 diff --git a/yolo_mindspore/dataset/mask/labels/train/0058.txt b/yolo_mindspore/dataset/mask/labels/train/0058.txt new file mode 100644 index 0000000..8d4e571 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0058.txt @@ -0,0 +1 @@ +31 0.597917 0.340741 0.189583 0.448148 diff --git a/yolo_mindspore/dataset/mask/labels/train/00580.txt b/yolo_mindspore/dataset/mask/labels/train/00580.txt new file mode 100644 index 0000000..7de3aac --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00580.txt @@ -0,0 +1 @@ +1 0.484375 0.1484375 0.166015625 0.216796875 diff --git a/yolo_mindspore/dataset/mask/labels/train/0059.txt b/yolo_mindspore/dataset/mask/labels/train/0059.txt new file mode 100644 index 0000000..b1c44bb --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0059.txt @@ -0,0 +1 @@ +31 0.472917 0.343519 0.252083 0.642593 diff --git a/yolo_mindspore/dataset/mask/labels/train/00590.txt b/yolo_mindspore/dataset/mask/labels/train/00590.txt new file mode 100644 index 0000000..60616ae --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00590.txt @@ -0,0 +1,3 @@ +1 0.171875 0.40299479166666663 0.09375 0.14713541666666666 +1 0.48193359375 0.4016927083333333 0.1064453125 0.16796875 +1 0.8759765625 0.3997395833333333 0.091796875 0.1640625 diff --git a/yolo_mindspore/dataset/mask/labels/train/0060.txt b/yolo_mindspore/dataset/mask/labels/train/0060.txt new file mode 100644 index 0000000..9343eb1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0060.txt @@ -0,0 +1 @@ +31 0.568750 0.240741 0.114583 0.207407 diff --git a/yolo_mindspore/dataset/mask/labels/train/00600.txt b/yolo_mindspore/dataset/mask/labels/train/00600.txt new file mode 100644 index 0000000..1355c97 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00600.txt @@ -0,0 +1 @@ +1 0.390625 0.1998535871156662 0.150390625 0.30014641288433386 diff --git a/yolo_mindspore/dataset/mask/labels/train/0061.txt b/yolo_mindspore/dataset/mask/labels/train/0061.txt new file mode 100644 index 0000000..fa1e489 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0061.txt @@ -0,0 +1 @@ +31 0.550521 0.365741 0.173958 0.350000 diff --git a/yolo_mindspore/dataset/mask/labels/train/00610.txt b/yolo_mindspore/dataset/mask/labels/train/00610.txt new file mode 100644 index 0000000..a4332da --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00610.txt @@ -0,0 +1 @@ +1 0.5398437500000001 0.3145833333333333 0.17343750000000002 0.3 diff --git a/yolo_mindspore/dataset/mask/labels/train/0062.txt b/yolo_mindspore/dataset/mask/labels/train/0062.txt new file mode 100644 index 0000000..9474259 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0062.txt @@ -0,0 +1,3 @@ +31 0.559375 0.225926 0.137500 0.262963 +31 0.839063 0.240741 0.130208 0.311111 +31 0.293750 0.294444 0.143750 0.248148 diff --git a/yolo_mindspore/dataset/mask/labels/train/00620.txt b/yolo_mindspore/dataset/mask/labels/train/00620.txt new file mode 100644 index 0000000..ca47b50 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00620.txt @@ -0,0 +1,2 @@ +1 0.47705078125 0.1987597911227154 0.1962890625 0.16906005221932116 +1 0.78857421875 0.3064621409921671 0.2216796875 0.17819843342036554 diff --git a/yolo_mindspore/dataset/mask/labels/train/0063.txt b/yolo_mindspore/dataset/mask/labels/train/0063.txt new file mode 100644 index 0000000..bf50ffc --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0063.txt @@ -0,0 +1 @@ +31 0.518229 0.328704 0.192708 0.375926 diff --git a/yolo_mindspore/dataset/mask/labels/train/00630.txt b/yolo_mindspore/dataset/mask/labels/train/00630.txt new file mode 100644 index 0000000..3b99cb4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00630.txt @@ -0,0 +1 @@ +1 0.48876953125 0.363754889178618 0.6689453125 0.5410691003911343 diff --git a/yolo_mindspore/dataset/mask/labels/train/0064.txt b/yolo_mindspore/dataset/mask/labels/train/0064.txt new file mode 100644 index 0000000..d479556 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0064.txt @@ -0,0 +1 @@ +31 0.482812 0.489815 0.278125 0.594444 diff --git a/yolo_mindspore/dataset/mask/labels/train/00640.txt b/yolo_mindspore/dataset/mask/labels/train/00640.txt new file mode 100644 index 0000000..0c60e0c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00640.txt @@ -0,0 +1 @@ +1 0.5859375 0.306640625 0.12890625 0.22786458333333331 diff --git a/yolo_mindspore/dataset/mask/labels/train/0065.txt b/yolo_mindspore/dataset/mask/labels/train/0065.txt new file mode 100644 index 0000000..add6550 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0065.txt @@ -0,0 +1 @@ +31 0.427083 0.334259 0.231250 0.446296 diff --git a/yolo_mindspore/dataset/mask/labels/train/00650.txt b/yolo_mindspore/dataset/mask/labels/train/00650.txt new file mode 100644 index 0000000..384ef96 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00650.txt @@ -0,0 +1,2 @@ +1 0.33154296875 0.22371134020618558 0.1982421875 0.19175257731958764 +1 0.60107421875 0.15257731958762888 0.2060546875 0.18694158075601375 diff --git a/yolo_mindspore/dataset/mask/labels/train/0066.txt b/yolo_mindspore/dataset/mask/labels/train/0066.txt new file mode 100644 index 0000000..7915c4d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0066.txt @@ -0,0 +1 @@ +31 0.506250 0.435185 0.295833 0.611111 diff --git a/yolo_mindspore/dataset/mask/labels/train/0067.txt b/yolo_mindspore/dataset/mask/labels/train/0067.txt new file mode 100644 index 0000000..77c6066 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0067.txt @@ -0,0 +1 @@ +31 0.486458 0.401852 0.235417 0.544444 diff --git a/yolo_mindspore/dataset/mask/labels/train/00670.txt b/yolo_mindspore/dataset/mask/labels/train/00670.txt new file mode 100644 index 0000000..72d9fd1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00670.txt @@ -0,0 +1,3 @@ +1 0.749 0.29333333333333333 0.226 0.37866666666666665 +1 0.537 0.12266666666666666 0.07 0.12266666666666666 +1 0.063 0.10933333333333332 0.09 0.144 diff --git a/yolo_mindspore/dataset/mask/labels/train/0068.txt b/yolo_mindspore/dataset/mask/labels/train/0068.txt new file mode 100644 index 0000000..e6b8ec1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0068.txt @@ -0,0 +1 @@ +31 0.452083 0.298148 0.185417 0.381481 diff --git a/yolo_mindspore/dataset/mask/labels/train/00680.txt b/yolo_mindspore/dataset/mask/labels/train/00680.txt new file mode 100644 index 0000000..c513ae5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00680.txt @@ -0,0 +1,8 @@ +1 0.17500000000000002 0.2813333333333333 0.074 0.09333333333333332 +1 0.324 0.27466666666666667 0.068 0.11733333333333333 +1 0.452 0.31466666666666665 0.056 0.096 +1 0.626 0.3293333333333333 0.064 0.12 +1 0.726 0.3133333333333333 0.064 0.12533333333333332 +1 0.8230000000000001 0.2906666666666667 0.08600000000000001 0.13333333333333333 +1 0.505 0.48266666666666663 0.08600000000000001 0.13333333333333333 +1 0.364 0.5 0.07200000000000001 0.14133333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/train/0070.txt b/yolo_mindspore/dataset/mask/labels/train/0070.txt new file mode 100644 index 0000000..1965f46 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0070.txt @@ -0,0 +1,2 @@ +31 0.148958 0.578704 0.225000 0.520370 +31 0.638542 0.445370 0.279167 0.616667 diff --git a/yolo_mindspore/dataset/mask/labels/train/00700.txt b/yolo_mindspore/dataset/mask/labels/train/00700.txt new file mode 100644 index 0000000..ea86a22 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00700.txt @@ -0,0 +1 @@ +1 0.5281250000000001 0.5020833333333333 0.20625000000000002 0.2916666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/0071.txt b/yolo_mindspore/dataset/mask/labels/train/0071.txt new file mode 100644 index 0000000..4d578a8 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0071.txt @@ -0,0 +1 @@ +31 0.441146 0.446296 0.334375 0.774074 diff --git a/yolo_mindspore/dataset/mask/labels/train/00710.txt b/yolo_mindspore/dataset/mask/labels/train/00710.txt new file mode 100644 index 0000000..c0c221c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00710.txt @@ -0,0 +1 @@ +1 0.47314453125 0.2821180555555555 0.1611328125 0.4253472222222222 diff --git a/yolo_mindspore/dataset/mask/labels/train/0072.txt b/yolo_mindspore/dataset/mask/labels/train/0072.txt new file mode 100644 index 0000000..9c71ed9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0072.txt @@ -0,0 +1 @@ +31 0.311979 0.274074 0.157292 0.262963 diff --git a/yolo_mindspore/dataset/mask/labels/train/00720.txt b/yolo_mindspore/dataset/mask/labels/train/00720.txt new file mode 100644 index 0000000..b358557 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00720.txt @@ -0,0 +1,3 @@ +1 0.40900000000000003 0.5 0.10200000000000001 0.2072072072072072 +1 0.547 0.5180180180180181 0.114 0.2012012012012012 +1 0.464 0.26126126126126126 0.112 0.2222222222222222 diff --git a/yolo_mindspore/dataset/mask/labels/train/0073.txt b/yolo_mindspore/dataset/mask/labels/train/0073.txt new file mode 100644 index 0000000..06f71f5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0073.txt @@ -0,0 +1 @@ +31 0.692187 0.360185 0.123958 0.212963 diff --git a/yolo_mindspore/dataset/mask/labels/train/00730.txt b/yolo_mindspore/dataset/mask/labels/train/00730.txt new file mode 100644 index 0000000..4152198 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00730.txt @@ -0,0 +1 @@ +1 0.3759765625 0.35836385836385837 0.453125 0.6776556776556777 diff --git a/yolo_mindspore/dataset/mask/labels/train/0074.txt b/yolo_mindspore/dataset/mask/labels/train/0074.txt new file mode 100644 index 0000000..fd54dd9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0074.txt @@ -0,0 +1 @@ +31 0.438021 0.379630 0.209375 0.477778 diff --git a/yolo_mindspore/dataset/mask/labels/train/00740.txt b/yolo_mindspore/dataset/mask/labels/train/00740.txt new file mode 100644 index 0000000..c66ffce --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00740.txt @@ -0,0 +1,3 @@ +1 0.23779296875 0.2764945652173913 0.1552734375 0.2703804347826087 +1 0.77734375 0.18138586956521738 0.1875 0.3138586956521739 +1 0.4921875 0.38926630434782605 0.083984375 0.13994565217391303 diff --git a/yolo_mindspore/dataset/mask/labels/train/0075.txt b/yolo_mindspore/dataset/mask/labels/train/0075.txt new file mode 100644 index 0000000..c5a5bb4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0075.txt @@ -0,0 +1 @@ +31 0.446875 0.423148 0.281250 0.550000 diff --git a/yolo_mindspore/dataset/mask/labels/train/00750.txt b/yolo_mindspore/dataset/mask/labels/train/00750.txt new file mode 100644 index 0000000..d5eab2b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00750.txt @@ -0,0 +1 @@ +1 0.59814453125 0.3489583333333333 0.6318359375 0.5611979166666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/0076.txt b/yolo_mindspore/dataset/mask/labels/train/0076.txt new file mode 100644 index 0000000..3a287a5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0076.txt @@ -0,0 +1 @@ +31 0.625000 0.380556 0.177083 0.542593 diff --git a/yolo_mindspore/dataset/mask/labels/train/00760.txt b/yolo_mindspore/dataset/mask/labels/train/00760.txt new file mode 100644 index 0000000..cf5bd85 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00760.txt @@ -0,0 +1 @@ +1 0.515625 0.4427083333333333 0.209375 0.31875 diff --git a/yolo_mindspore/dataset/mask/labels/train/0077.txt b/yolo_mindspore/dataset/mask/labels/train/0077.txt new file mode 100644 index 0000000..4f75eed --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0077.txt @@ -0,0 +1 @@ +31 0.402604 0.463889 0.221875 0.531481 diff --git a/yolo_mindspore/dataset/mask/labels/train/00770.txt b/yolo_mindspore/dataset/mask/labels/train/00770.txt new file mode 100644 index 0000000..5e4ab81 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00770.txt @@ -0,0 +1 @@ +1 0.5515625000000001 0.39791666666666664 0.184375 0.275 diff --git a/yolo_mindspore/dataset/mask/labels/train/0078.txt b/yolo_mindspore/dataset/mask/labels/train/0078.txt new file mode 100644 index 0000000..22f6ced --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0078.txt @@ -0,0 +1 @@ +31 0.527083 0.500000 0.331250 0.629630 diff --git a/yolo_mindspore/dataset/mask/labels/train/0079.txt b/yolo_mindspore/dataset/mask/labels/train/0079.txt new file mode 100644 index 0000000..ce0dbc8 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0079.txt @@ -0,0 +1 @@ +31 0.540625 0.439815 0.231250 0.516667 diff --git a/yolo_mindspore/dataset/mask/labels/train/00790.txt b/yolo_mindspore/dataset/mask/labels/train/00790.txt new file mode 100644 index 0000000..bffa7ec --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00790.txt @@ -0,0 +1 @@ +1 0.51328125 0.496875 0.2109375 0.34375 diff --git a/yolo_mindspore/dataset/mask/labels/train/0080.txt b/yolo_mindspore/dataset/mask/labels/train/0080.txt new file mode 100644 index 0000000..d82bfad --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0080.txt @@ -0,0 +1 @@ +31 0.453646 0.565741 0.105208 0.224074 diff --git a/yolo_mindspore/dataset/mask/labels/train/00800.txt b/yolo_mindspore/dataset/mask/labels/train/00800.txt new file mode 100644 index 0000000..28da33f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00800.txt @@ -0,0 +1 @@ +1 0.55615234375 0.4003921568627451 0.4365234375 0.4541176470588235 diff --git a/yolo_mindspore/dataset/mask/labels/train/0081.txt b/yolo_mindspore/dataset/mask/labels/train/0081.txt new file mode 100644 index 0000000..fcf0d58 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0081.txt @@ -0,0 +1 @@ +31 0.388021 0.373148 0.276042 0.531481 diff --git a/yolo_mindspore/dataset/mask/labels/train/00810.txt b/yolo_mindspore/dataset/mask/labels/train/00810.txt new file mode 100644 index 0000000..43fa850 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00810.txt @@ -0,0 +1,2 @@ +1 0.36474609375 0.30538922155688625 0.3486328125 0.34281437125748504 +1 0.70458984375 0.41242514970059885 0.1806640625 0.157185628742515 diff --git a/yolo_mindspore/dataset/mask/labels/train/0082.txt b/yolo_mindspore/dataset/mask/labels/train/0082.txt new file mode 100644 index 0000000..bbbc343 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0082.txt @@ -0,0 +1 @@ +31 0.505729 0.374074 0.157292 0.307407 diff --git a/yolo_mindspore/dataset/mask/labels/train/00820.txt b/yolo_mindspore/dataset/mask/labels/train/00820.txt new file mode 100644 index 0000000..929c5a9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00820.txt @@ -0,0 +1 @@ +1 0.28933333333333333 0.318 0.3173333333333333 0.28800000000000003 diff --git a/yolo_mindspore/dataset/mask/labels/train/0083.txt b/yolo_mindspore/dataset/mask/labels/train/0083.txt new file mode 100644 index 0000000..9b99d5c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0083.txt @@ -0,0 +1 @@ +31 0.490625 0.195370 0.131250 0.238889 diff --git a/yolo_mindspore/dataset/mask/labels/train/00830.txt b/yolo_mindspore/dataset/mask/labels/train/00830.txt new file mode 100644 index 0000000..27dab2c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00830.txt @@ -0,0 +1 @@ +1 0.521484375 0.2934451219512195 0.388671875 0.4024390243902439 diff --git a/yolo_mindspore/dataset/mask/labels/train/0084.txt b/yolo_mindspore/dataset/mask/labels/train/0084.txt new file mode 100644 index 0000000..53a11f4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0084.txt @@ -0,0 +1 @@ +31 0.355729 0.345370 0.153125 0.272222 diff --git a/yolo_mindspore/dataset/mask/labels/train/00840.txt b/yolo_mindspore/dataset/mask/labels/train/00840.txt new file mode 100644 index 0000000..5a1b941 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00840.txt @@ -0,0 +1 @@ +1 0.5789062500000001 0.4 0.19843750000000002 0.2833333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/0085.txt b/yolo_mindspore/dataset/mask/labels/train/0085.txt new file mode 100644 index 0000000..7f8eb4a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0085.txt @@ -0,0 +1 @@ +31 0.523438 0.310185 0.163542 0.446296 diff --git a/yolo_mindspore/dataset/mask/labels/train/00850.txt b/yolo_mindspore/dataset/mask/labels/train/00850.txt new file mode 100644 index 0000000..56bb551 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00850.txt @@ -0,0 +1 @@ +1 0.486328125 0.2629310344827586 0.693359375 0.5100574712643678 diff --git a/yolo_mindspore/dataset/mask/labels/train/0086.txt b/yolo_mindspore/dataset/mask/labels/train/0086.txt new file mode 100644 index 0000000..b216814 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0086.txt @@ -0,0 +1,2 @@ +31 0.364063 0.379630 0.211458 0.496296 +31 0.740625 0.585185 0.175000 0.403704 diff --git a/yolo_mindspore/dataset/mask/labels/train/00860.txt b/yolo_mindspore/dataset/mask/labels/train/00860.txt new file mode 100644 index 0000000..9946114 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00860.txt @@ -0,0 +1,3 @@ +1 0.2451171875 0.28306092124814264 0.13671875 0.27191679049034173 +1 0.45068359375 0.17830609212481424 0.1396484375 0.2852897473997028 +1 0.8173828125 0.25854383358098065 0.13671875 0.23179791976225853 diff --git a/yolo_mindspore/dataset/mask/labels/train/0087.txt b/yolo_mindspore/dataset/mask/labels/train/0087.txt new file mode 100644 index 0000000..9a1e0f9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0087.txt @@ -0,0 +1 @@ +31 0.618229 0.254630 0.132292 0.290741 diff --git a/yolo_mindspore/dataset/mask/labels/train/00870.txt b/yolo_mindspore/dataset/mask/labels/train/00870.txt new file mode 100644 index 0000000..32c4abf --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00870.txt @@ -0,0 +1,2 @@ +1 0.4658203125 0.269893899204244 0.138671875 0.23209549071618035 +1 0.693359375 0.2791777188328912 0.15234375 0.23209549071618035 diff --git a/yolo_mindspore/dataset/mask/labels/train/0088.txt b/yolo_mindspore/dataset/mask/labels/train/0088.txt new file mode 100644 index 0000000..66377e6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0088.txt @@ -0,0 +1 @@ +31 0.655208 0.325926 0.191667 0.377778 diff --git a/yolo_mindspore/dataset/mask/labels/train/00880.txt b/yolo_mindspore/dataset/mask/labels/train/00880.txt new file mode 100644 index 0000000..60b40f1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00880.txt @@ -0,0 +1 @@ +1 0.722 0.512 0.3 0.528 diff --git a/yolo_mindspore/dataset/mask/labels/train/0089.txt b/yolo_mindspore/dataset/mask/labels/train/0089.txt new file mode 100644 index 0000000..04c6f5a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0089.txt @@ -0,0 +1 @@ +31 0.432812 0.384259 0.161458 0.368519 diff --git a/yolo_mindspore/dataset/mask/labels/train/00890.txt b/yolo_mindspore/dataset/mask/labels/train/00890.txt new file mode 100644 index 0000000..62cda81 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00890.txt @@ -0,0 +1 @@ +1 0.54453125 0.26666666666666666 0.19843750000000002 0.2875 diff --git a/yolo_mindspore/dataset/mask/labels/train/0090.txt b/yolo_mindspore/dataset/mask/labels/train/0090.txt new file mode 100644 index 0000000..e090d7e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0090.txt @@ -0,0 +1 @@ +31 0.594271 0.275000 0.088542 0.175926 diff --git a/yolo_mindspore/dataset/mask/labels/train/00900.txt b/yolo_mindspore/dataset/mask/labels/train/00900.txt new file mode 100644 index 0000000..d1434aa --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00900.txt @@ -0,0 +1,2 @@ +1 0.46533203125 0.23111979166666666 0.2021484375 0.3138020833333333 +1 0.830078125 0.20833333333333331 0.21484375 0.3333333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/0091.txt b/yolo_mindspore/dataset/mask/labels/train/0091.txt new file mode 100644 index 0000000..2fd7bad --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0091.txt @@ -0,0 +1 @@ +31 0.603125 0.374074 0.302083 0.637037 diff --git a/yolo_mindspore/dataset/mask/labels/train/00910.txt b/yolo_mindspore/dataset/mask/labels/train/00910.txt new file mode 100644 index 0000000..a9128cb --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00910.txt @@ -0,0 +1 @@ +1 0.5146484375 0.32108843537414966 0.4765625 0.39999999999999997 diff --git a/yolo_mindspore/dataset/mask/labels/train/0092.txt b/yolo_mindspore/dataset/mask/labels/train/0092.txt new file mode 100644 index 0000000..e0ab3c6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0092.txt @@ -0,0 +1 @@ +31 0.529167 0.380556 0.231250 0.616667 diff --git a/yolo_mindspore/dataset/mask/labels/train/00920.txt b/yolo_mindspore/dataset/mask/labels/train/00920.txt new file mode 100644 index 0000000..02719a6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00920.txt @@ -0,0 +1 @@ +1 0.5921875 0.390625 0.20625000000000002 0.2895833333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/00930.txt b/yolo_mindspore/dataset/mask/labels/train/00930.txt new file mode 100644 index 0000000..ae3f933 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00930.txt @@ -0,0 +1 @@ +1 0.41357421875 0.4195906432748538 0.3251953125 0.6988304093567251 diff --git a/yolo_mindspore/dataset/mask/labels/train/0094.txt b/yolo_mindspore/dataset/mask/labels/train/0094.txt new file mode 100644 index 0000000..e234c94 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0094.txt @@ -0,0 +1 @@ +31 0.451042 0.379630 0.289583 0.522222 diff --git a/yolo_mindspore/dataset/mask/labels/train/0095.txt b/yolo_mindspore/dataset/mask/labels/train/0095.txt new file mode 100644 index 0000000..bce3264 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0095.txt @@ -0,0 +1 @@ +31 0.456250 0.304630 0.214583 0.338889 diff --git a/yolo_mindspore/dataset/mask/labels/train/00950.txt b/yolo_mindspore/dataset/mask/labels/train/00950.txt new file mode 100644 index 0000000..214cdac --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00950.txt @@ -0,0 +1,2 @@ +1 0.31005859375 0.13799414348462666 0.2060546875 0.19399707174231334 +1 0.5546875 0.12481698389458273 0.232421875 0.20863836017569548 diff --git a/yolo_mindspore/dataset/mask/labels/train/0096.txt b/yolo_mindspore/dataset/mask/labels/train/0096.txt new file mode 100644 index 0000000..a065583 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0096.txt @@ -0,0 +1 @@ +31 0.577604 0.437037 0.296875 0.703704 diff --git a/yolo_mindspore/dataset/mask/labels/train/0097.txt b/yolo_mindspore/dataset/mask/labels/train/0097.txt new file mode 100644 index 0000000..4d57a69 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0097.txt @@ -0,0 +1 @@ +31 0.526042 0.448148 0.181250 0.403704 diff --git a/yolo_mindspore/dataset/mask/labels/train/00970.txt b/yolo_mindspore/dataset/mask/labels/train/00970.txt new file mode 100644 index 0000000..45666e9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00970.txt @@ -0,0 +1 @@ +1 0.5171875 0.4 0.178125 0.29583333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/train/0098.txt b/yolo_mindspore/dataset/mask/labels/train/0098.txt new file mode 100644 index 0000000..c2ff0c9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0098.txt @@ -0,0 +1,4 @@ +31 0.505208 0.341667 0.154167 0.342593 +31 0.861458 0.254630 0.164583 0.346296 +31 0.297917 0.274074 0.183333 0.285185 +31 0.082812 0.454630 0.126042 0.387037 diff --git a/yolo_mindspore/dataset/mask/labels/train/00980.txt b/yolo_mindspore/dataset/mask/labels/train/00980.txt new file mode 100644 index 0000000..0d4a59d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/00980.txt @@ -0,0 +1,2 @@ +1 0.305 0.5105421686746988 0.17 0.35843373493975905 +1 0.596 0.4954819277108434 0.14400000000000002 0.2801204819277109 diff --git a/yolo_mindspore/dataset/mask/labels/train/0099.txt b/yolo_mindspore/dataset/mask/labels/train/0099.txt new file mode 100644 index 0000000..6a4d179 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0099.txt @@ -0,0 +1 @@ +31 0.465625 0.470370 0.222917 0.377778 diff --git a/yolo_mindspore/dataset/mask/labels/train/0100.txt b/yolo_mindspore/dataset/mask/labels/train/0100.txt new file mode 100644 index 0000000..820acab --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0100.txt @@ -0,0 +1 @@ +31 0.558854 0.374074 0.226042 0.440741 diff --git a/yolo_mindspore/dataset/mask/labels/train/01000.txt b/yolo_mindspore/dataset/mask/labels/train/01000.txt new file mode 100644 index 0000000..359740b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01000.txt @@ -0,0 +1 @@ +1 0.6218750000000001 0.4197916666666667 0.17500000000000002 0.26875 diff --git a/yolo_mindspore/dataset/mask/labels/train/0101.txt b/yolo_mindspore/dataset/mask/labels/train/0101.txt new file mode 100644 index 0000000..2e29ec6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/0101.txt @@ -0,0 +1 @@ +31 0.460938 0.312037 0.136458 0.250000 diff --git a/yolo_mindspore/dataset/mask/labels/train/01010.txt b/yolo_mindspore/dataset/mask/labels/train/01010.txt new file mode 100644 index 0000000..5851cb0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01010.txt @@ -0,0 +1 @@ +1 0.55390625 0.4354166666666667 0.1703125 0.2625 diff --git a/yolo_mindspore/dataset/mask/labels/train/01020.txt b/yolo_mindspore/dataset/mask/labels/train/01020.txt new file mode 100644 index 0000000..fa48d2b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01020.txt @@ -0,0 +1,2 @@ +1 0.3098958333333333 0.47222222222222227 0.11354166666666667 0.23703703703703705 +1 0.6052083333333333 0.4287037037037037 0.13333333333333333 0.29814814814814816 diff --git a/yolo_mindspore/dataset/mask/labels/train/01030.txt b/yolo_mindspore/dataset/mask/labels/train/01030.txt new file mode 100644 index 0000000..0086c39 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01030.txt @@ -0,0 +1 @@ +1 0.52109375 0.38125 0.15781250000000002 0.2625 diff --git a/yolo_mindspore/dataset/mask/labels/train/01040.txt b/yolo_mindspore/dataset/mask/labels/train/01040.txt new file mode 100644 index 0000000..b2181c6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01040.txt @@ -0,0 +1 @@ +1 0.5265625 0.3375 0.14375000000000002 0.22916666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/01050.txt b/yolo_mindspore/dataset/mask/labels/train/01050.txt new file mode 100644 index 0000000..f7d6481 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01050.txt @@ -0,0 +1 @@ +1 0.46640625 0.3958333333333333 0.2390625 0.4083333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/01060.txt b/yolo_mindspore/dataset/mask/labels/train/01060.txt new file mode 100644 index 0000000..0fb68ef --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01060.txt @@ -0,0 +1 @@ +1 0.5859375 0.44687499999999997 0.209375 0.34375 diff --git a/yolo_mindspore/dataset/mask/labels/train/01080.txt b/yolo_mindspore/dataset/mask/labels/train/01080.txt new file mode 100644 index 0000000..2cee272 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01080.txt @@ -0,0 +1 @@ +1 0.6666666666666666 0.28500000000000003 0.23466666666666666 0.21 diff --git a/yolo_mindspore/dataset/mask/labels/train/01090.txt b/yolo_mindspore/dataset/mask/labels/train/01090.txt new file mode 100644 index 0000000..d49326f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01090.txt @@ -0,0 +1 @@ +1 0.5390625 0.4270833333333333 0.17500000000000002 0.275 diff --git a/yolo_mindspore/dataset/mask/labels/train/01100.txt b/yolo_mindspore/dataset/mask/labels/train/01100.txt new file mode 100644 index 0000000..fc5e6d7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01100.txt @@ -0,0 +1 @@ +1 0.43212890625 0.1743357096565133 0.2841796875 0.2566429034348671 diff --git a/yolo_mindspore/dataset/mask/labels/train/01110.txt b/yolo_mindspore/dataset/mask/labels/train/01110.txt new file mode 100644 index 0000000..bf7b9e4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01110.txt @@ -0,0 +1 @@ +1 0.3955078125 0.25292207792207794 0.412109375 0.36298701298701297 diff --git a/yolo_mindspore/dataset/mask/labels/train/01120.txt b/yolo_mindspore/dataset/mask/labels/train/01120.txt new file mode 100644 index 0000000..cc54e38 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01120.txt @@ -0,0 +1 @@ +1 0.52578125 0.378125 0.1703125 0.29791666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/01130.txt b/yolo_mindspore/dataset/mask/labels/train/01130.txt new file mode 100644 index 0000000..404c5de --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01130.txt @@ -0,0 +1 @@ +1 0.67236328125 0.2520193861066236 0.1240234375 0.23263327948303716 diff --git a/yolo_mindspore/dataset/mask/labels/train/01140.txt b/yolo_mindspore/dataset/mask/labels/train/01140.txt new file mode 100644 index 0000000..be2f190 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01140.txt @@ -0,0 +1 @@ +1 0.6109375 0.41562499999999997 0.22812500000000002 0.38125 diff --git a/yolo_mindspore/dataset/mask/labels/train/01150.txt b/yolo_mindspore/dataset/mask/labels/train/01150.txt new file mode 100644 index 0000000..933bd70 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01150.txt @@ -0,0 +1 @@ +1 0.151 0.4005376344086022 0.298 0.4731182795698925 diff --git a/yolo_mindspore/dataset/mask/labels/train/01170.txt b/yolo_mindspore/dataset/mask/labels/train/01170.txt new file mode 100644 index 0000000..adb39f3 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01170.txt @@ -0,0 +1 @@ +1 0.44453125000000004 0.32916666666666666 0.2421875 0.37083333333333335 diff --git a/yolo_mindspore/dataset/mask/labels/train/01180.txt b/yolo_mindspore/dataset/mask/labels/train/01180.txt new file mode 100644 index 0000000..d44eacc --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01180.txt @@ -0,0 +1,2 @@ +1 0.392578125 0.39895697522816165 0.185546875 0.3468057366362451 +1 0.73828125 0.42633637548891784 0.16796875 0.2816166883963494 diff --git a/yolo_mindspore/dataset/mask/labels/train/01190.txt b/yolo_mindspore/dataset/mask/labels/train/01190.txt new file mode 100644 index 0000000..4310727 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01190.txt @@ -0,0 +1 @@ +1 0.52978515625 0.2896440129449838 0.3232421875 0.3255663430420712 diff --git a/yolo_mindspore/dataset/mask/labels/train/01200.txt b/yolo_mindspore/dataset/mask/labels/train/01200.txt new file mode 100644 index 0000000..9b562a6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01200.txt @@ -0,0 +1 @@ +1 0.5328125 0.4479166666666667 0.16562500000000002 0.26666666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/01210.txt b/yolo_mindspore/dataset/mask/labels/train/01210.txt new file mode 100644 index 0000000..0641c22 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01210.txt @@ -0,0 +1 @@ +1 0.5328125 0.3333333333333333 0.178125 0.29583333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/train/01220.txt b/yolo_mindspore/dataset/mask/labels/train/01220.txt new file mode 100644 index 0000000..4362a03 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01220.txt @@ -0,0 +1 @@ +1 0.35107421875 0.23828920570264764 0.2763671875 0.3869653767820774 diff --git a/yolo_mindspore/dataset/mask/labels/train/01230.txt b/yolo_mindspore/dataset/mask/labels/train/01230.txt new file mode 100644 index 0000000..f627a97 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01230.txt @@ -0,0 +1 @@ +1 0.484375 0.1284191006026889 0.234375 0.12239221140472878 diff --git a/yolo_mindspore/dataset/mask/labels/train/01240.txt b/yolo_mindspore/dataset/mask/labels/train/01240.txt new file mode 100644 index 0000000..7a4bd70 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01240.txt @@ -0,0 +1 @@ +1 0.51328125 0.33958333333333335 0.15781250000000002 0.2708333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/01250.txt b/yolo_mindspore/dataset/mask/labels/train/01250.txt new file mode 100644 index 0000000..58c2727 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01250.txt @@ -0,0 +1 @@ +1 0.51025390625 0.20194113963681903 0.3291015625 0.28490920475892295 diff --git a/yolo_mindspore/dataset/mask/labels/train/01260.txt b/yolo_mindspore/dataset/mask/labels/train/01260.txt new file mode 100644 index 0000000..c2746e7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01260.txt @@ -0,0 +1,2 @@ +1 0.42236328125 0.287568306010929 0.2314453125 0.4412568306010929 +1 0.70166015625 0.29713114754098363 0.2275390625 0.4166666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/01270.txt b/yolo_mindspore/dataset/mask/labels/train/01270.txt new file mode 100644 index 0000000..a22f745 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01270.txt @@ -0,0 +1 @@ +1 0.3779296875 0.2165948275862069 0.23046875 0.22916666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/01280.txt b/yolo_mindspore/dataset/mask/labels/train/01280.txt new file mode 100644 index 0000000..c70a6b0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01280.txt @@ -0,0 +1 @@ +1 0.564453125 0.3355134074558535 0.59375 0.6278613472858078 diff --git a/yolo_mindspore/dataset/mask/labels/train/01290.txt b/yolo_mindspore/dataset/mask/labels/train/01290.txt new file mode 100644 index 0000000..c07e392 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01290.txt @@ -0,0 +1 @@ +1 0.4375 0.38044184535412606 0.669921875 0.6062378167641325 diff --git a/yolo_mindspore/dataset/mask/labels/train/01300.txt b/yolo_mindspore/dataset/mask/labels/train/01300.txt new file mode 100644 index 0000000..6767704 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01300.txt @@ -0,0 +1,4 @@ +1 0.24462890625 0.33984375 0.1220703125 0.22916666666666666 +1 0.39794921875 0.3802083333333333 0.1181640625 0.19791666666666666 +1 0.58251953125 0.44986979166666663 0.1181640625 0.18359375 +1 0.7900390625 0.3372395833333333 0.150390625 0.25260416666666663 diff --git a/yolo_mindspore/dataset/mask/labels/train/01310.txt b/yolo_mindspore/dataset/mask/labels/train/01310.txt new file mode 100644 index 0000000..625bd26 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01310.txt @@ -0,0 +1 @@ +1 0.5085937500000001 0.39166666666666666 0.21406250000000002 0.3458333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/01320.txt b/yolo_mindspore/dataset/mask/labels/train/01320.txt new file mode 100644 index 0000000..594610b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01320.txt @@ -0,0 +1 @@ +1 0.5014749262536873 0.372 0.11209439528023599 0.088 diff --git a/yolo_mindspore/dataset/mask/labels/train/01330.txt b/yolo_mindspore/dataset/mask/labels/train/01330.txt new file mode 100644 index 0000000..3fbefa5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01330.txt @@ -0,0 +1 @@ +1 0.515625 0.37028608582574774 0.56640625 0.48439531859557866 diff --git a/yolo_mindspore/dataset/mask/labels/train/01340.txt b/yolo_mindspore/dataset/mask/labels/train/01340.txt new file mode 100644 index 0000000..60c9fbb --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01340.txt @@ -0,0 +1,4 @@ +1 0.099 0.45866666666666667 0.194 0.48533333333333334 +1 0.295 0.5973333333333333 0.13 0.21333333333333332 +1 0.72 0.284 0.092 0.17333333333333334 +1 0.915 0.512 0.106 0.16 diff --git a/yolo_mindspore/dataset/mask/labels/train/01350.txt b/yolo_mindspore/dataset/mask/labels/train/01350.txt new file mode 100644 index 0000000..885258c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01350.txt @@ -0,0 +1 @@ +1 0.52197265625 0.27994791666666663 0.4755859375 0.4114583333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/01370.txt b/yolo_mindspore/dataset/mask/labels/train/01370.txt new file mode 100644 index 0000000..03e2a36 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01370.txt @@ -0,0 +1,2 @@ +1 0.39111328125 0.2188340807174888 0.2275390625 0.25829596412556055 +1 0.65234375 0.21928251121076234 0.212890625 0.2591928251121076 diff --git a/yolo_mindspore/dataset/mask/labels/train/01380.txt b/yolo_mindspore/dataset/mask/labels/train/01380.txt new file mode 100644 index 0000000..5ec3595 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01380.txt @@ -0,0 +1 @@ +1 0.5068359375 0.27956204379562044 0.416015625 0.41751824817518246 diff --git a/yolo_mindspore/dataset/mask/labels/train/01390.txt b/yolo_mindspore/dataset/mask/labels/train/01390.txt new file mode 100644 index 0000000..5034631 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01390.txt @@ -0,0 +1,2 @@ +1 0.388671875 0.14906027219701878 0.12890625 0.13869086195722619 +1 0.6787109375 0.21743357096565133 0.138671875 0.12119248217757615 diff --git a/yolo_mindspore/dataset/mask/labels/train/01410.txt b/yolo_mindspore/dataset/mask/labels/train/01410.txt new file mode 100644 index 0000000..cbe04fb --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01410.txt @@ -0,0 +1 @@ +1 0.48876953125 0.10702199661590524 0.1787109375 0.18358714043993232 diff --git a/yolo_mindspore/dataset/mask/labels/train/01420.txt b/yolo_mindspore/dataset/mask/labels/train/01420.txt new file mode 100644 index 0000000..64c90e3 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01420.txt @@ -0,0 +1 @@ +1 0.401 0.492 0.294 0.48266666666666663 diff --git a/yolo_mindspore/dataset/mask/labels/train/01430.txt b/yolo_mindspore/dataset/mask/labels/train/01430.txt new file mode 100644 index 0000000..94395fd --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01430.txt @@ -0,0 +1,2 @@ +1 0.21826171875 0.2889374090247453 0.1337890625 0.24890829694323147 +1 0.6806640625 0.16448326055312956 0.189453125 0.29985443959243085 diff --git a/yolo_mindspore/dataset/mask/labels/train/01440.txt b/yolo_mindspore/dataset/mask/labels/train/01440.txt new file mode 100644 index 0000000..8880bed --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01440.txt @@ -0,0 +1 @@ +1 0.58046875 0.41041666666666665 0.16718750000000002 0.2583333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/01460.txt b/yolo_mindspore/dataset/mask/labels/train/01460.txt new file mode 100644 index 0000000..65c8869 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01460.txt @@ -0,0 +1,5 @@ +1 0.2509765625 0.18899204244031828 0.1171875 0.22148541114058354 +1 0.35595703125 0.2964190981432361 0.1064453125 0.19496021220159152 +1 0.474609375 0.24403183023872677 0.072265625 0.1909814323607427 +1 0.5556640625 0.3149867374005305 0.076171875 0.15517241379310345 +1 0.65234375 0.2679045092838196 0.083984375 0.18037135278514588 diff --git a/yolo_mindspore/dataset/mask/labels/train/01470.txt b/yolo_mindspore/dataset/mask/labels/train/01470.txt new file mode 100644 index 0000000..c07873b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01470.txt @@ -0,0 +1 @@ +1 0.5146484375 0.25830078125 0.373046875 0.4873046875 diff --git a/yolo_mindspore/dataset/mask/labels/train/01480.txt b/yolo_mindspore/dataset/mask/labels/train/01480.txt new file mode 100644 index 0000000..a6970dd --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01480.txt @@ -0,0 +1 @@ +1 0.30712890625 0.23375706214689265 0.2353515625 0.3997175141242938 diff --git a/yolo_mindspore/dataset/mask/labels/train/01490.txt b/yolo_mindspore/dataset/mask/labels/train/01490.txt new file mode 100644 index 0000000..9b373b1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01490.txt @@ -0,0 +1 @@ +1 0.5322265625 0.31852791878172587 0.4921875 0.5609137055837563 diff --git a/yolo_mindspore/dataset/mask/labels/train/01500.txt b/yolo_mindspore/dataset/mask/labels/train/01500.txt new file mode 100644 index 0000000..ad2b5f2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01500.txt @@ -0,0 +1 @@ +1 0.498046875 0.3026315789473684 0.462890625 0.45951417004048584 diff --git a/yolo_mindspore/dataset/mask/labels/train/01510.txt b/yolo_mindspore/dataset/mask/labels/train/01510.txt new file mode 100644 index 0000000..7d14a2d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01510.txt @@ -0,0 +1 @@ +1 0.5953125 0.39166666666666666 0.17500000000000002 0.24583333333333332 diff --git a/yolo_mindspore/dataset/mask/labels/train/01520.txt b/yolo_mindspore/dataset/mask/labels/train/01520.txt new file mode 100644 index 0000000..2bff137 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01520.txt @@ -0,0 +1 @@ +1 0.58125 0.421875 0.240625 0.31875 diff --git a/yolo_mindspore/dataset/mask/labels/train/01530.txt b/yolo_mindspore/dataset/mask/labels/train/01530.txt new file mode 100644 index 0000000..92cfed9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01530.txt @@ -0,0 +1,2 @@ +1 0.225 0.2533333333333333 0.134 0.21333333333333332 +1 0.628 0.216 0.124 0.208 diff --git a/yolo_mindspore/dataset/mask/labels/train/01540.txt b/yolo_mindspore/dataset/mask/labels/train/01540.txt new file mode 100644 index 0000000..d2772d8 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01540.txt @@ -0,0 +1 @@ +1 0.6023437500000001 0.3958333333333333 0.1703125 0.24166666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/01550.txt b/yolo_mindspore/dataset/mask/labels/train/01550.txt new file mode 100644 index 0000000..9c3e32d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01550.txt @@ -0,0 +1 @@ +1 0.49375 0.421875 0.22187500000000002 0.33541666666666664 diff --git a/yolo_mindspore/dataset/mask/labels/train/01560.txt b/yolo_mindspore/dataset/mask/labels/train/01560.txt new file mode 100644 index 0000000..1b24441 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01560.txt @@ -0,0 +1 @@ +1 0.4697265625 0.18570402298850575 0.236328125 0.23922413793103448 diff --git a/yolo_mindspore/dataset/mask/labels/train/01570.txt b/yolo_mindspore/dataset/mask/labels/train/01570.txt new file mode 100644 index 0000000..f75d539 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01570.txt @@ -0,0 +1 @@ +1 0.48046875 0.2503581661891117 0.32421875 0.3144699140401146 diff --git a/yolo_mindspore/dataset/mask/labels/train/01580.txt b/yolo_mindspore/dataset/mask/labels/train/01580.txt new file mode 100644 index 0000000..ac7c551 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01580.txt @@ -0,0 +1,3 @@ +1 0.4951171875 0.4216691068814056 0.04296875 0.06734992679355783 +1 0.63525390625 0.40995607613469986 0.0498046875 0.07027818448023426 +1 0.7431640625 0.4150805270863836 0.037109375 0.06881405563689605 diff --git a/yolo_mindspore/dataset/mask/labels/train/01590.txt b/yolo_mindspore/dataset/mask/labels/train/01590.txt new file mode 100644 index 0000000..1f1516b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01590.txt @@ -0,0 +1 @@ +1 0.38525390625 0.45492957746478874 0.3408203125 0.6929577464788733 diff --git a/yolo_mindspore/dataset/mask/labels/train/01600.txt b/yolo_mindspore/dataset/mask/labels/train/01600.txt new file mode 100644 index 0000000..44b22e9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01600.txt @@ -0,0 +1 @@ +1 0.5203125000000001 0.37083333333333335 0.23125 0.39166666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/01620.txt b/yolo_mindspore/dataset/mask/labels/train/01620.txt new file mode 100644 index 0000000..3f7101d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01620.txt @@ -0,0 +1,2 @@ +1 0.353515625 0.30781250000000004 0.123046875 0.290625 +1 0.5341796875 0.18828125 0.13671875 0.2765625 diff --git a/yolo_mindspore/dataset/mask/labels/train/01630.txt b/yolo_mindspore/dataset/mask/labels/train/01630.txt new file mode 100644 index 0000000..5a6e8e9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01630.txt @@ -0,0 +1,4 @@ +1 0.18115234375 0.08409279204639603 0.1279296875 0.1168185584092792 +1 0.40283203125 0.1992543496271748 0.0986328125 0.11184755592377796 +1 0.576171875 0.19552609776304888 0.115234375 0.1060480530240265 +1 0.83154296875 0.1512013256006628 0.1162109375 0.1168185584092792 diff --git a/yolo_mindspore/dataset/mask/labels/train/01640.txt b/yolo_mindspore/dataset/mask/labels/train/01640.txt new file mode 100644 index 0000000..b7a5d3c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01640.txt @@ -0,0 +1,7 @@ +1 0.10888671875 0.18281938325991187 0.0908203125 0.16005873715124816 +1 0.255859375 0.2533039647577092 0.072265625 0.1277533039647577 +1 0.3720703125 0.29148311306901614 0.087890625 0.15418502202643172 +1 0.4775390625 0.1872246696035242 0.0703125 0.13656387665198236 +1 0.568359375 0.2834067547723935 0.0859375 0.16740088105726872 +1 0.71142578125 0.2731277533039647 0.0869140625 0.15859030837004404 +1 0.87158203125 0.2408223201174743 0.0888671875 0.17621145374449337 diff --git a/yolo_mindspore/dataset/mask/labels/train/01650.txt b/yolo_mindspore/dataset/mask/labels/train/01650.txt new file mode 100644 index 0000000..f928c82 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01650.txt @@ -0,0 +1,2 @@ +1 0.37744140625 0.21435546875 0.1298828125 0.1884765625 +1 0.62109375 0.1376953125 0.16015625 0.19140625 diff --git a/yolo_mindspore/dataset/mask/labels/train/01660.txt b/yolo_mindspore/dataset/mask/labels/train/01660.txt new file mode 100644 index 0000000..5f96b36 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01660.txt @@ -0,0 +1,3 @@ +1 0.309375 0.4712962962962963 0.10416666666666667 0.21296296296296297 +1 0.6135416666666667 0.47314814814814815 0.1125 0.2537037037037037 +1 0.8645833333333334 0.3074074074074074 0.15625 0.40370370370370373 diff --git a/yolo_mindspore/dataset/mask/labels/train/01670.txt b/yolo_mindspore/dataset/mask/labels/train/01670.txt new file mode 100644 index 0000000..7bb2ef5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01670.txt @@ -0,0 +1 @@ +1 0.5421875 0.45729166666666665 0.1875 0.28125 diff --git a/yolo_mindspore/dataset/mask/labels/train/01690.txt b/yolo_mindspore/dataset/mask/labels/train/01690.txt new file mode 100644 index 0000000..a7378f9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01690.txt @@ -0,0 +1 @@ +1 0.6171875 0.328125 0.1875 0.26875 diff --git a/yolo_mindspore/dataset/mask/labels/train/01710.txt b/yolo_mindspore/dataset/mask/labels/train/01710.txt new file mode 100644 index 0000000..59eb1e8 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01710.txt @@ -0,0 +1 @@ +1 0.47119140625 0.16699029126213594 0.2548828125 0.2174757281553398 diff --git a/yolo_mindspore/dataset/mask/labels/train/01720.txt b/yolo_mindspore/dataset/mask/labels/train/01720.txt new file mode 100644 index 0000000..d8fe170 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01720.txt @@ -0,0 +1,2 @@ +1 0.42724609375 0.10866666666666666 0.0966796875 0.15333333333333332 +1 0.61181640625 0.11533333333333333 0.0810546875 0.108 diff --git a/yolo_mindspore/dataset/mask/labels/train/01730.txt b/yolo_mindspore/dataset/mask/labels/train/01730.txt new file mode 100644 index 0000000..f99a701 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01730.txt @@ -0,0 +1 @@ +1 0.49843750000000003 0.5177083333333333 0.15937500000000002 0.23541666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/01750.txt b/yolo_mindspore/dataset/mask/labels/train/01750.txt new file mode 100644 index 0000000..b7a73a4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01750.txt @@ -0,0 +1 @@ +1 0.5625 0.46041666666666664 0.178125 0.2833333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/01780.txt b/yolo_mindspore/dataset/mask/labels/train/01780.txt new file mode 100644 index 0000000..c800afc --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01780.txt @@ -0,0 +1 @@ +1 0.388671875 0.39013671875 0.439453125 0.5517578125 diff --git a/yolo_mindspore/dataset/mask/labels/train/01790.txt b/yolo_mindspore/dataset/mask/labels/train/01790.txt new file mode 100644 index 0000000..23163a0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01790.txt @@ -0,0 +1 @@ +1 0.5140625 0.3527777777777778 0.16979166666666667 0.38703703703703707 diff --git a/yolo_mindspore/dataset/mask/labels/train/01800.txt b/yolo_mindspore/dataset/mask/labels/train/01800.txt new file mode 100644 index 0000000..b295e3c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01800.txt @@ -0,0 +1 @@ +1 0.49267578125 0.26758204956463494 0.4326171875 0.3904889484259879 diff --git a/yolo_mindspore/dataset/mask/labels/train/01810.txt b/yolo_mindspore/dataset/mask/labels/train/01810.txt new file mode 100644 index 0000000..62874d6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01810.txt @@ -0,0 +1 @@ +1 0.4931640625 0.29248046875 0.302734375 0.4052734375 diff --git a/yolo_mindspore/dataset/mask/labels/train/01820.txt b/yolo_mindspore/dataset/mask/labels/train/01820.txt new file mode 100644 index 0000000..c483fb7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01820.txt @@ -0,0 +1 @@ +1 0.63046875 0.403125 0.1609375 0.2520833333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/01830.txt b/yolo_mindspore/dataset/mask/labels/train/01830.txt new file mode 100644 index 0000000..554e1ba --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01830.txt @@ -0,0 +1 @@ +1 0.49140625000000004 0.4010416666666667 0.2015625 0.30625 diff --git a/yolo_mindspore/dataset/mask/labels/train/01840.txt b/yolo_mindspore/dataset/mask/labels/train/01840.txt new file mode 100644 index 0000000..8c4f963 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01840.txt @@ -0,0 +1 @@ +1 0.52978515625 0.2962239583333333 0.4814453125 0.42578125 diff --git a/yolo_mindspore/dataset/mask/labels/train/01850.txt b/yolo_mindspore/dataset/mask/labels/train/01850.txt new file mode 100644 index 0000000..bf02a99 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01850.txt @@ -0,0 +1 @@ +1 0.46923828125 0.22233072916666666 0.4072265625 0.369140625 diff --git a/yolo_mindspore/dataset/mask/labels/train/01860.txt b/yolo_mindspore/dataset/mask/labels/train/01860.txt new file mode 100644 index 0000000..7aaf286 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01860.txt @@ -0,0 +1 @@ +1 0.5515625000000001 0.36875 0.18125000000000002 0.275 diff --git a/yolo_mindspore/dataset/mask/labels/train/01870.txt b/yolo_mindspore/dataset/mask/labels/train/01870.txt new file mode 100644 index 0000000..edcd10f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01870.txt @@ -0,0 +1 @@ +1 0.56015625 0.40729166666666666 0.16718750000000002 0.25625 diff --git a/yolo_mindspore/dataset/mask/labels/train/01880.txt b/yolo_mindspore/dataset/mask/labels/train/01880.txt new file mode 100644 index 0000000..bd166d2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01880.txt @@ -0,0 +1,6 @@ +1 0.17724609375 0.10495283018867924 0.0673828125 0.09669811320754716 +1 0.32861328125 0.09375 0.0654296875 0.09316037735849056 +1 0.50048828125 0.09610849056603774 0.0712890625 0.1025943396226415 +1 0.6298828125 0.08431603773584906 0.068359375 0.09787735849056603 +1 0.74072265625 0.11851415094339622 0.0634765625 0.09787735849056603 +1 0.87744140625 0.08077830188679246 0.0771484375 0.1025943396226415 diff --git a/yolo_mindspore/dataset/mask/labels/train/01890.txt b/yolo_mindspore/dataset/mask/labels/train/01890.txt new file mode 100644 index 0000000..537da50 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01890.txt @@ -0,0 +1 @@ +1 0.2861328125 0.41594454072790293 0.2109375 0.537261698440208 diff --git a/yolo_mindspore/dataset/mask/labels/train/01900.txt b/yolo_mindspore/dataset/mask/labels/train/01900.txt new file mode 100644 index 0000000..445ff2b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01900.txt @@ -0,0 +1 @@ +1 0.56796875 0.3989583333333333 0.19843750000000002 0.29375 diff --git a/yolo_mindspore/dataset/mask/labels/train/01910.txt b/yolo_mindspore/dataset/mask/labels/train/01910.txt new file mode 100644 index 0000000..0eab4be --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01910.txt @@ -0,0 +1 @@ +1 0.4990234375 0.33844647519582244 0.65625 0.5163185378590078 diff --git a/yolo_mindspore/dataset/mask/labels/train/01930.txt b/yolo_mindspore/dataset/mask/labels/train/01930.txt new file mode 100644 index 0000000..1f5ce46 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01930.txt @@ -0,0 +1,2 @@ +1 0.47705078125 0.18012820512820513 0.0966796875 0.13974358974358975 +1 0.71044921875 0.257051282051282 0.0791015625 0.14487179487179488 diff --git a/yolo_mindspore/dataset/mask/labels/train/01940.txt b/yolo_mindspore/dataset/mask/labels/train/01940.txt new file mode 100644 index 0000000..16b79aa --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01940.txt @@ -0,0 +1 @@ +1 0.59375 0.3885416666666667 0.17500000000000002 0.2520833333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/01950.txt b/yolo_mindspore/dataset/mask/labels/train/01950.txt new file mode 100644 index 0000000..9a9fc0a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01950.txt @@ -0,0 +1 @@ +1 0.474609375 0.24523809523809526 0.251953125 0.37619047619047624 diff --git a/yolo_mindspore/dataset/mask/labels/train/01960.txt b/yolo_mindspore/dataset/mask/labels/train/01960.txt new file mode 100644 index 0000000..52eeab2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01960.txt @@ -0,0 +1,3 @@ +1 0.323 0.27999999999999997 0.21 0.3466666666666667 +1 0.489 0.5106666666666666 0.146 0.2373333333333333 +1 0.8150000000000001 0.43466666666666665 0.222 0.2826666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/01970.txt b/yolo_mindspore/dataset/mask/labels/train/01970.txt new file mode 100644 index 0000000..1ff125d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01970.txt @@ -0,0 +1 @@ +1 0.4375 0.2867540029112082 0.38671875 0.35516739446870454 diff --git a/yolo_mindspore/dataset/mask/labels/train/01980.txt b/yolo_mindspore/dataset/mask/labels/train/01980.txt new file mode 100644 index 0000000..1e3a56a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/01980.txt @@ -0,0 +1,4 @@ +1 0.29052734375 0.27519893899204245 0.1044921875 0.1445623342175066 +1 0.46044921875 0.2652519893899204 0.1064453125 0.17771883289124668 +1 0.62060546875 0.09681697612732094 0.0830078125 0.14058355437665782 +1 0.73828125 0.2791777188328912 0.09765625 0.16578249336870027 diff --git a/yolo_mindspore/dataset/mask/labels/train/02000.txt b/yolo_mindspore/dataset/mask/labels/train/02000.txt new file mode 100644 index 0000000..4096333 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02000.txt @@ -0,0 +1 @@ +1 0.640625 0.353515625 0.33203125 0.462890625 diff --git a/yolo_mindspore/dataset/mask/labels/train/02010.txt b/yolo_mindspore/dataset/mask/labels/train/02010.txt new file mode 100644 index 0000000..f8b34af --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02010.txt @@ -0,0 +1 @@ +1 0.46718750000000003 0.3885416666666667 0.22812500000000002 0.32708333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/train/02020.txt b/yolo_mindspore/dataset/mask/labels/train/02020.txt new file mode 100644 index 0000000..c2d0300 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02020.txt @@ -0,0 +1 @@ +1 0.52783203125 0.18489583333333331 0.2763671875 0.2265625 diff --git a/yolo_mindspore/dataset/mask/labels/train/02030.txt b/yolo_mindspore/dataset/mask/labels/train/02030.txt new file mode 100644 index 0000000..f0d463d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02030.txt @@ -0,0 +1 @@ +1 0.52109375 0.36041666666666666 0.1953125 0.3625 diff --git a/yolo_mindspore/dataset/mask/labels/train/02040.txt b/yolo_mindspore/dataset/mask/labels/train/02040.txt new file mode 100644 index 0000000..404c56d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02040.txt @@ -0,0 +1 @@ +1 0.46240234375 0.4329268292682927 0.4541015625 0.6951219512195121 diff --git a/yolo_mindspore/dataset/mask/labels/train/02050.txt b/yolo_mindspore/dataset/mask/labels/train/02050.txt new file mode 100644 index 0000000..2b7da0a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02050.txt @@ -0,0 +1 @@ +1 0.4658203125 0.19050802139037432 0.234375 0.19385026737967914 diff --git a/yolo_mindspore/dataset/mask/labels/train/02060.txt b/yolo_mindspore/dataset/mask/labels/train/02060.txt new file mode 100644 index 0000000..257fa2b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02060.txt @@ -0,0 +1,3 @@ +1 0.14404296875 0.2240484429065744 0.0947265625 0.24048442906574397 +1 0.4287109375 0.23615916955017302 0.09375 0.2301038062283737 +1 0.81396484375 0.1859861591695502 0.0966796875 0.2301038062283737 diff --git a/yolo_mindspore/dataset/mask/labels/train/02070.txt b/yolo_mindspore/dataset/mask/labels/train/02070.txt new file mode 100644 index 0000000..338496d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02070.txt @@ -0,0 +1 @@ +1 0.56796875 0.38958333333333334 0.16718750000000002 0.24166666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/02080.txt b/yolo_mindspore/dataset/mask/labels/train/02080.txt new file mode 100644 index 0000000..1d76059 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02080.txt @@ -0,0 +1 @@ +1 0.48486328125 0.28828125 0.3740234375 0.390625 diff --git a/yolo_mindspore/dataset/mask/labels/train/02090.txt b/yolo_mindspore/dataset/mask/labels/train/02090.txt new file mode 100644 index 0000000..a7c0343 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02090.txt @@ -0,0 +1,2 @@ +1 0.41333333333333333 0.305 0.16533333333333333 0.162 +1 0.648 0.273 0.18133333333333332 0.158 diff --git a/yolo_mindspore/dataset/mask/labels/train/02100.txt b/yolo_mindspore/dataset/mask/labels/train/02100.txt new file mode 100644 index 0000000..4a21e2a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02100.txt @@ -0,0 +1,2 @@ +1 0.2703125 0.24537037037037038 0.153125 0.3055555555555556 +1 0.8953125 0.21666666666666667 0.209375 0.3925925925925926 diff --git a/yolo_mindspore/dataset/mask/labels/train/02110.txt b/yolo_mindspore/dataset/mask/labels/train/02110.txt new file mode 100644 index 0000000..ab8c72a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02110.txt @@ -0,0 +1 @@ +1 0.46406250000000004 0.4864583333333333 0.1875 0.2895833333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/02120.txt b/yolo_mindspore/dataset/mask/labels/train/02120.txt new file mode 100644 index 0000000..8214274 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02120.txt @@ -0,0 +1 @@ +1 0.37060546875 0.3030560271646859 0.4384765625 0.4499151103565365 diff --git a/yolo_mindspore/dataset/mask/labels/train/02140.txt b/yolo_mindspore/dataset/mask/labels/train/02140.txt new file mode 100644 index 0000000..5fd3ad4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02140.txt @@ -0,0 +1 @@ +1 0.48486328125 0.3048016701461378 0.5615234375 0.5427974947807933 diff --git a/yolo_mindspore/dataset/mask/labels/train/02150.txt b/yolo_mindspore/dataset/mask/labels/train/02150.txt new file mode 100644 index 0000000..e3b153d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02150.txt @@ -0,0 +1 @@ +1 0.51953125 0.4010416666666667 0.1703125 0.2604166666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/02160.txt b/yolo_mindspore/dataset/mask/labels/train/02160.txt new file mode 100644 index 0000000..28dd31c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02160.txt @@ -0,0 +1 @@ +1 0.49755859375 0.21868787276341947 0.2470703125 0.2962226640159045 diff --git a/yolo_mindspore/dataset/mask/labels/train/02170.txt b/yolo_mindspore/dataset/mask/labels/train/02170.txt new file mode 100644 index 0000000..f31faba --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02170.txt @@ -0,0 +1 @@ +1 0.56953125 0.4041666666666667 0.20468750000000002 0.3 diff --git a/yolo_mindspore/dataset/mask/labels/train/02180.txt b/yolo_mindspore/dataset/mask/labels/train/02180.txt new file mode 100644 index 0000000..e76a666 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02180.txt @@ -0,0 +1 @@ +1 0.42919921875 0.18619791666666666 0.1572265625 0.24739583333333331 diff --git a/yolo_mindspore/dataset/mask/labels/train/02190.txt b/yolo_mindspore/dataset/mask/labels/train/02190.txt new file mode 100644 index 0000000..a956835 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02190.txt @@ -0,0 +1 @@ +1 0.5048828125 0.4934114202049781 0.291015625 0.6617862371888726 diff --git a/yolo_mindspore/dataset/mask/labels/train/02200.txt b/yolo_mindspore/dataset/mask/labels/train/02200.txt new file mode 100644 index 0000000..bf6d37e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02200.txt @@ -0,0 +1 @@ +1 0.45166015625 0.240234375 0.4423828125 0.35546875 diff --git a/yolo_mindspore/dataset/mask/labels/train/02210.txt b/yolo_mindspore/dataset/mask/labels/train/02210.txt new file mode 100644 index 0000000..5131b36 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02210.txt @@ -0,0 +1 @@ +1 0.58359375 0.46249999999999997 0.1953125 0.2916666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/02220.txt b/yolo_mindspore/dataset/mask/labels/train/02220.txt new file mode 100644 index 0000000..f49d3fe --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02220.txt @@ -0,0 +1 @@ +1 0.6296875000000001 0.3989583333333333 0.20625000000000002 0.28125 diff --git a/yolo_mindspore/dataset/mask/labels/train/02230.txt b/yolo_mindspore/dataset/mask/labels/train/02230.txt new file mode 100644 index 0000000..78262c5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02230.txt @@ -0,0 +1 @@ +1 0.5421875 0.32916666666666666 0.16562500000000002 0.25 diff --git a/yolo_mindspore/dataset/mask/labels/train/02240.txt b/yolo_mindspore/dataset/mask/labels/train/02240.txt new file mode 100644 index 0000000..41f6f40 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02240.txt @@ -0,0 +1,2 @@ +1 0.44384765625 0.41421143847487 0.0849609375 0.22530329289428075 +1 0.5732421875 0.22010398613518195 0.123046875 0.24263431542461003 diff --git a/yolo_mindspore/dataset/mask/labels/train/02250.txt b/yolo_mindspore/dataset/mask/labels/train/02250.txt new file mode 100644 index 0000000..00850e4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02250.txt @@ -0,0 +1 @@ +1 0.55859375 0.18033854166666666 0.27734375 0.203125 diff --git a/yolo_mindspore/dataset/mask/labels/train/02260.txt b/yolo_mindspore/dataset/mask/labels/train/02260.txt new file mode 100644 index 0000000..33b321b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02260.txt @@ -0,0 +1 @@ +1 0.44873046875 0.14264619019492025 0.2080078125 0.17542823390431186 diff --git a/yolo_mindspore/dataset/mask/labels/train/02270.txt b/yolo_mindspore/dataset/mask/labels/train/02270.txt new file mode 100644 index 0000000..0db30c6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02270.txt @@ -0,0 +1 @@ +1 0.115 0.575075075075075 0.158 0.22522522522522523 diff --git a/yolo_mindspore/dataset/mask/labels/train/02280.txt b/yolo_mindspore/dataset/mask/labels/train/02280.txt new file mode 100644 index 0000000..06c51e9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02280.txt @@ -0,0 +1 @@ +1 0.56953125 0.4708333333333333 0.19843750000000002 0.3458333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/02290.txt b/yolo_mindspore/dataset/mask/labels/train/02290.txt new file mode 100644 index 0000000..503e210 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02290.txt @@ -0,0 +1 @@ +1 0.30615234375 0.48871527777777773 0.3798828125 0.9322916666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/02300.txt b/yolo_mindspore/dataset/mask/labels/train/02300.txt new file mode 100644 index 0000000..b1f5e50 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02300.txt @@ -0,0 +1 @@ +1 0.5281250000000001 0.5072916666666667 0.184375 0.28541666666666665 diff --git a/yolo_mindspore/dataset/mask/labels/train/02310.txt b/yolo_mindspore/dataset/mask/labels/train/02310.txt new file mode 100644 index 0000000..81754b5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02310.txt @@ -0,0 +1 @@ +1 0.43671875000000004 0.4375 0.20468750000000002 0.325 diff --git a/yolo_mindspore/dataset/mask/labels/train/02320.txt b/yolo_mindspore/dataset/mask/labels/train/02320.txt new file mode 100644 index 0000000..b0502ff --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02320.txt @@ -0,0 +1,3 @@ +1 0.1552734375 0.22286079182630908 0.1015625 0.16219667943805877 +1 0.38134765625 0.2413793103448276 0.0888671875 0.13793103448275862 +1 0.703125 0.2611749680715198 0.087890625 0.13665389527458494 diff --git a/yolo_mindspore/dataset/mask/labels/train/02330.txt b/yolo_mindspore/dataset/mask/labels/train/02330.txt new file mode 100644 index 0000000..782dd94 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02330.txt @@ -0,0 +1 @@ +1 0.46044921875 0.28604471858134156 0.3759765625 0.3438704703161141 diff --git a/yolo_mindspore/dataset/mask/labels/train/02350.txt b/yolo_mindspore/dataset/mask/labels/train/02350.txt new file mode 100644 index 0000000..f0b4901 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02350.txt @@ -0,0 +1,4 @@ +1 0.631 0.444 0.074 0.13066666666666665 +1 0.515 0.4933333333333333 0.078 0.112 +1 0.393 0.448 0.078 0.12266666666666666 +1 0.25 0.5213333333333333 0.088 0.11466666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/02360.txt b/yolo_mindspore/dataset/mask/labels/train/02360.txt new file mode 100644 index 0000000..e190ec3 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02360.txt @@ -0,0 +1 @@ +1 0.55 0.3677083333333333 0.20625000000000002 0.3229166666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/02370.txt b/yolo_mindspore/dataset/mask/labels/train/02370.txt new file mode 100644 index 0000000..d894b79 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02370.txt @@ -0,0 +1 @@ +1 0.59912109375 0.32650073206442165 0.2177734375 0.35431918008784774 diff --git a/yolo_mindspore/dataset/mask/labels/train/02380.txt b/yolo_mindspore/dataset/mask/labels/train/02380.txt new file mode 100644 index 0000000..3abdcb1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02380.txt @@ -0,0 +1 @@ +1 0.50439453125 0.27115885416666663 0.2607421875 0.263671875 diff --git a/yolo_mindspore/dataset/mask/labels/train/02390.txt b/yolo_mindspore/dataset/mask/labels/train/02390.txt new file mode 100644 index 0000000..151e43d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02390.txt @@ -0,0 +1,2 @@ +1 0.25927734375 0.3834519572953736 0.1044921875 0.24377224199288255 +1 0.69921875 0.24288256227758007 0.16015625 0.297153024911032 diff --git a/yolo_mindspore/dataset/mask/labels/train/02400.txt b/yolo_mindspore/dataset/mask/labels/train/02400.txt new file mode 100644 index 0000000..bb8cfad --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02400.txt @@ -0,0 +1 @@ +1 0.5437500000000001 0.42291666666666666 0.146875 0.25 diff --git a/yolo_mindspore/dataset/mask/labels/train/02410.txt b/yolo_mindspore/dataset/mask/labels/train/02410.txt new file mode 100644 index 0000000..b28c6fc --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02410.txt @@ -0,0 +1 @@ +1 0.5984375000000001 0.45208333333333334 0.125 0.19583333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/02420.txt b/yolo_mindspore/dataset/mask/labels/train/02420.txt new file mode 100644 index 0000000..959a0c2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02420.txt @@ -0,0 +1 @@ +1 0.5554687500000001 0.3229166666666667 0.2234375 0.3 diff --git a/yolo_mindspore/dataset/mask/labels/train/02430.txt b/yolo_mindspore/dataset/mask/labels/train/02430.txt new file mode 100644 index 0000000..bde9693 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02430.txt @@ -0,0 +1 @@ +1 0.53125 0.44895833333333335 0.16562500000000002 0.24791666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/02440.txt b/yolo_mindspore/dataset/mask/labels/train/02440.txt new file mode 100644 index 0000000..355a8f5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02440.txt @@ -0,0 +1,2 @@ +1 0.4015625 0.4 0.10104166666666667 0.24074074074074076 +1 0.7161458333333334 0.3944444444444445 0.11562499999999999 0.25925925925925924 diff --git a/yolo_mindspore/dataset/mask/labels/train/02460.txt b/yolo_mindspore/dataset/mask/labels/train/02460.txt new file mode 100644 index 0000000..5c2da7a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02460.txt @@ -0,0 +1,2 @@ +1 0.36279296875 0.22990654205607478 0.1416015625 0.34392523364485983 +1 0.60693359375 0.17102803738317757 0.1513671875 0.30467289719626167 diff --git a/yolo_mindspore/dataset/mask/labels/train/02470.txt b/yolo_mindspore/dataset/mask/labels/train/02470.txt new file mode 100644 index 0000000..9c54ff3 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02470.txt @@ -0,0 +1 @@ +1 0.53466796875 0.2282685512367491 0.3095703125 0.2968197879858657 diff --git a/yolo_mindspore/dataset/mask/labels/train/02480.txt b/yolo_mindspore/dataset/mask/labels/train/02480.txt new file mode 100644 index 0000000..07050a7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02480.txt @@ -0,0 +1 @@ +1 0.509375 0.3927083333333333 0.234375 0.35625 diff --git a/yolo_mindspore/dataset/mask/labels/train/02500.txt b/yolo_mindspore/dataset/mask/labels/train/02500.txt new file mode 100644 index 0000000..a2a2f68 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02500.txt @@ -0,0 +1,3 @@ +1 0.2890625 0.3351851851851852 0.09895833333333333 0.1925925925925926 +1 0.42864583333333334 0.4 0.04895833333333333 0.10370370370370371 +1 0.7567708333333333 0.25833333333333336 0.06979166666666667 0.12407407407407407 diff --git a/yolo_mindspore/dataset/mask/labels/train/02510.txt b/yolo_mindspore/dataset/mask/labels/train/02510.txt new file mode 100644 index 0000000..22ec62f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02510.txt @@ -0,0 +1 @@ +1 0.6376953125 0.1299212598425197 0.31640625 0.21709786276715412 diff --git a/yolo_mindspore/dataset/mask/labels/train/02520.txt b/yolo_mindspore/dataset/mask/labels/train/02520.txt new file mode 100644 index 0000000..2069102 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02520.txt @@ -0,0 +1 @@ +1 0.54345703125 0.17564655172413793 0.2626953125 0.23204022988505746 diff --git a/yolo_mindspore/dataset/mask/labels/train/02540.txt b/yolo_mindspore/dataset/mask/labels/train/02540.txt new file mode 100644 index 0000000..b92f225 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02540.txt @@ -0,0 +1 @@ +1 0.578125 0.375 0.19687500000000002 0.275 diff --git a/yolo_mindspore/dataset/mask/labels/train/02550.txt b/yolo_mindspore/dataset/mask/labels/train/02550.txt new file mode 100644 index 0000000..b59d2d1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02550.txt @@ -0,0 +1,2 @@ +1 0.25439453125 0.234375 0.1416015625 0.275 +1 0.51611328125 0.17109375000000002 0.1611328125 0.2765625 diff --git a/yolo_mindspore/dataset/mask/labels/train/02560.txt b/yolo_mindspore/dataset/mask/labels/train/02560.txt new file mode 100644 index 0000000..7791202 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02560.txt @@ -0,0 +1 @@ +1 0.37353515625 0.2442002442002442 0.2255859375 0.3882783882783883 diff --git a/yolo_mindspore/dataset/mask/labels/train/02570.txt b/yolo_mindspore/dataset/mask/labels/train/02570.txt new file mode 100644 index 0000000..b63b315 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02570.txt @@ -0,0 +1 @@ +1 0.4375 0.3788961038961039 0.478515625 0.4642857142857143 diff --git a/yolo_mindspore/dataset/mask/labels/train/02580.txt b/yolo_mindspore/dataset/mask/labels/train/02580.txt new file mode 100644 index 0000000..95ca170 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02580.txt @@ -0,0 +1 @@ +1 0.5171875 0.340625 0.19062500000000002 0.2895833333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/02590.txt b/yolo_mindspore/dataset/mask/labels/train/02590.txt new file mode 100644 index 0000000..ced0da7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02590.txt @@ -0,0 +1 @@ +1 0.5859375 0.37916666666666665 0.178125 0.26666666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/02600.txt b/yolo_mindspore/dataset/mask/labels/train/02600.txt new file mode 100644 index 0000000..fb83cc4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02600.txt @@ -0,0 +1 @@ +1 0.50625 0.4354166666666667 0.19062500000000002 0.29583333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/train/02620.txt b/yolo_mindspore/dataset/mask/labels/train/02620.txt new file mode 100644 index 0000000..d0cbd2e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02620.txt @@ -0,0 +1 @@ +1 0.52734375 0.37173629242819844 0.642578125 0.641644908616188 diff --git a/yolo_mindspore/dataset/mask/labels/train/02630.txt b/yolo_mindspore/dataset/mask/labels/train/02630.txt new file mode 100644 index 0000000..25cc112 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02630.txt @@ -0,0 +1 @@ +1 0.55224609375 0.4 0.3388671875 0.6235294117647059 diff --git a/yolo_mindspore/dataset/mask/labels/train/02640.txt b/yolo_mindspore/dataset/mask/labels/train/02640.txt new file mode 100644 index 0000000..4db82c0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02640.txt @@ -0,0 +1 @@ +1 0.324 0.339 0.37066666666666664 0.382 diff --git a/yolo_mindspore/dataset/mask/labels/train/02650.txt b/yolo_mindspore/dataset/mask/labels/train/02650.txt new file mode 100644 index 0000000..ca90fb1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02650.txt @@ -0,0 +1 @@ +1 0.50625 0.35104166666666664 0.215625 0.33541666666666664 diff --git a/yolo_mindspore/dataset/mask/labels/train/02660.txt b/yolo_mindspore/dataset/mask/labels/train/02660.txt new file mode 100644 index 0000000..73d418f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02660.txt @@ -0,0 +1 @@ +1 0.56640625 0.44479166666666664 0.1953125 0.3020833333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/02670.txt b/yolo_mindspore/dataset/mask/labels/train/02670.txt new file mode 100644 index 0000000..36702c0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02670.txt @@ -0,0 +1 @@ +1 0.53125 0.4306640625 0.23828125 0.16861979166666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/02680.txt b/yolo_mindspore/dataset/mask/labels/train/02680.txt new file mode 100644 index 0000000..d6bf913 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02680.txt @@ -0,0 +1,2 @@ +1 0.255859375 0.23670212765957446 0.177734375 0.2553191489361702 +1 0.71826171875 0.2493351063829787 0.1826171875 0.2859042553191489 diff --git a/yolo_mindspore/dataset/mask/labels/train/02690.txt b/yolo_mindspore/dataset/mask/labels/train/02690.txt new file mode 100644 index 0000000..1a5e00e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02690.txt @@ -0,0 +1,2 @@ +1 0.356 0.30133333333333334 0.14 0.21866666666666665 +1 0.48 0.3 0.14 0.22666666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/02700.txt b/yolo_mindspore/dataset/mask/labels/train/02700.txt new file mode 100644 index 0000000..25d9f47 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02700.txt @@ -0,0 +1 @@ +1 0.59296875 0.33541666666666664 0.2234375 0.325 diff --git a/yolo_mindspore/dataset/mask/labels/train/02710.txt b/yolo_mindspore/dataset/mask/labels/train/02710.txt new file mode 100644 index 0000000..7f5819a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02710.txt @@ -0,0 +1 @@ +1 0.766 0.503003003003003 0.164 0.3033033033033033 diff --git a/yolo_mindspore/dataset/mask/labels/train/02720.txt b/yolo_mindspore/dataset/mask/labels/train/02720.txt new file mode 100644 index 0000000..d78d156 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02720.txt @@ -0,0 +1,2 @@ +1 0.4421875 0.38981481481481484 0.10104166666666667 0.23148148148148148 +1 0.596875 0.41944444444444445 0.11041666666666666 0.24629629629629632 diff --git a/yolo_mindspore/dataset/mask/labels/train/02730.txt b/yolo_mindspore/dataset/mask/labels/train/02730.txt new file mode 100644 index 0000000..1465ffa --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02730.txt @@ -0,0 +1 @@ +1 0.41500000000000004 0.312 0.122 0.20266666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/02740.txt b/yolo_mindspore/dataset/mask/labels/train/02740.txt new file mode 100644 index 0000000..35e9e28 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02740.txt @@ -0,0 +1 @@ +1 0.451171875 0.1806640625 0.310546875 0.2532552083333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/02770.txt b/yolo_mindspore/dataset/mask/labels/train/02770.txt new file mode 100644 index 0000000..1f0b3c9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02770.txt @@ -0,0 +1 @@ +1 0.5359375000000001 0.41770833333333335 0.225 0.36875 diff --git a/yolo_mindspore/dataset/mask/labels/train/02790.txt b/yolo_mindspore/dataset/mask/labels/train/02790.txt new file mode 100644 index 0000000..c3940a8 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02790.txt @@ -0,0 +1 @@ +1 0.53955078125 0.31926406926406925 0.4873046875 0.4898989898989899 diff --git a/yolo_mindspore/dataset/mask/labels/train/02800.txt b/yolo_mindspore/dataset/mask/labels/train/02800.txt new file mode 100644 index 0000000..6f341f4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02800.txt @@ -0,0 +1 @@ +1 0.51796875 0.475 0.2015625 0.3 diff --git a/yolo_mindspore/dataset/mask/labels/train/02810.txt b/yolo_mindspore/dataset/mask/labels/train/02810.txt new file mode 100644 index 0000000..e1bdf08 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02810.txt @@ -0,0 +1 @@ +1 0.5632812500000001 0.4125 0.21406250000000002 0.3 diff --git a/yolo_mindspore/dataset/mask/labels/train/02820.txt b/yolo_mindspore/dataset/mask/labels/train/02820.txt new file mode 100644 index 0000000..f04b1c4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02820.txt @@ -0,0 +1 @@ +1 0.4609375 0.41562499999999997 0.1875 0.27291666666666664 diff --git a/yolo_mindspore/dataset/mask/labels/train/02830.txt b/yolo_mindspore/dataset/mask/labels/train/02830.txt new file mode 100644 index 0000000..3591f03 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02830.txt @@ -0,0 +1,2 @@ +1 0.2724609375 0.14138204924543288 0.162109375 0.15409054805401112 +1 0.5966796875 0.13621922160444797 0.177734375 0.16441620333598092 diff --git a/yolo_mindspore/dataset/mask/labels/train/02840.txt b/yolo_mindspore/dataset/mask/labels/train/02840.txt new file mode 100644 index 0000000..76381c7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02840.txt @@ -0,0 +1,3 @@ +1 0.21337890625 0.10864864864864865 0.1376953125 0.20432432432432432 +1 0.39111328125 0.14972972972972973 0.1513671875 0.18486486486486486 +1 0.87548828125 0.13135135135135134 0.1689453125 0.22378378378378377 diff --git a/yolo_mindspore/dataset/mask/labels/train/02850.txt b/yolo_mindspore/dataset/mask/labels/train/02850.txt new file mode 100644 index 0000000..fa9a64c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02850.txt @@ -0,0 +1 @@ +1 0.496875 0.3989583333333333 0.20625000000000002 0.31875 diff --git a/yolo_mindspore/dataset/mask/labels/train/02860.txt b/yolo_mindspore/dataset/mask/labels/train/02860.txt new file mode 100644 index 0000000..0400196 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02860.txt @@ -0,0 +1 @@ +1 0.46044921875 0.17833981841763943 0.3583984375 0.2814526588845655 diff --git a/yolo_mindspore/dataset/mask/labels/train/02870.txt b/yolo_mindspore/dataset/mask/labels/train/02870.txt new file mode 100644 index 0000000..af19a49 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02870.txt @@ -0,0 +1 @@ +1 0.498046875 0.3778901734104046 0.505859375 0.4869942196531792 diff --git a/yolo_mindspore/dataset/mask/labels/train/02880.txt b/yolo_mindspore/dataset/mask/labels/train/02880.txt new file mode 100644 index 0000000..17495e0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02880.txt @@ -0,0 +1,2 @@ +1 0.3182291666666667 0.31574074074074077 0.165625 0.30185185185185187 +1 0.8859374999999999 0.2564814814814815 0.228125 0.4425925925925926 diff --git a/yolo_mindspore/dataset/mask/labels/train/02890.txt b/yolo_mindspore/dataset/mask/labels/train/02890.txt new file mode 100644 index 0000000..fc6a52b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02890.txt @@ -0,0 +1 @@ +1 0.55078125 0.37916666666666665 0.24531250000000002 0.35 diff --git a/yolo_mindspore/dataset/mask/labels/train/02900.txt b/yolo_mindspore/dataset/mask/labels/train/02900.txt new file mode 100644 index 0000000..f2f6a29 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02900.txt @@ -0,0 +1 @@ +1 0.53828125 0.45208333333333334 0.1484375 0.24583333333333332 diff --git a/yolo_mindspore/dataset/mask/labels/train/02930.txt b/yolo_mindspore/dataset/mask/labels/train/02930.txt new file mode 100644 index 0000000..a3bc9d2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02930.txt @@ -0,0 +1 @@ +1 0.3466796875 0.23871527777777776 0.22265625 0.4392361111111111 diff --git a/yolo_mindspore/dataset/mask/labels/train/02940.txt b/yolo_mindspore/dataset/mask/labels/train/02940.txt new file mode 100644 index 0000000..ac67ac9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02940.txt @@ -0,0 +1 @@ +1 0.56689453125 0.3319783197831978 0.4658203125 0.5158084914182475 diff --git a/yolo_mindspore/dataset/mask/labels/train/02950.txt b/yolo_mindspore/dataset/mask/labels/train/02950.txt new file mode 100644 index 0000000..04826f4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02950.txt @@ -0,0 +1,2 @@ +1 0.2953125 0.39814814814814814 0.165625 0.3925925925925926 +1 0.7671875 0.4027777777777778 0.165625 0.3648148148148148 diff --git a/yolo_mindspore/dataset/mask/labels/train/02960.txt b/yolo_mindspore/dataset/mask/labels/train/02960.txt new file mode 100644 index 0000000..b37d90d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02960.txt @@ -0,0 +1 @@ +1 0.48203125 0.4395833333333333 0.23593750000000002 0.3458333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/02970.txt b/yolo_mindspore/dataset/mask/labels/train/02970.txt new file mode 100644 index 0000000..fd912a0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02970.txt @@ -0,0 +1 @@ +1 0.35000000000000003 0.22822822822822822 0.168 0.26426426426426425 diff --git a/yolo_mindspore/dataset/mask/labels/train/02980.txt b/yolo_mindspore/dataset/mask/labels/train/02980.txt new file mode 100644 index 0000000..24087ae --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02980.txt @@ -0,0 +1 @@ +1 0.6904296875 0.4019033674963397 0.244140625 0.4524158125915081 diff --git a/yolo_mindspore/dataset/mask/labels/train/02990.txt b/yolo_mindspore/dataset/mask/labels/train/02990.txt new file mode 100644 index 0000000..efbac85 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/02990.txt @@ -0,0 +1 @@ +1 0.5320312500000001 0.3125 0.2078125 0.35833333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/train/03000.txt b/yolo_mindspore/dataset/mask/labels/train/03000.txt new file mode 100644 index 0000000..9dfb8ee --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03000.txt @@ -0,0 +1 @@ +1 0.5166015625 0.1649519890260631 0.251953125 0.21056241426611796 diff --git a/yolo_mindspore/dataset/mask/labels/train/03010.txt b/yolo_mindspore/dataset/mask/labels/train/03010.txt new file mode 100644 index 0000000..640ba8a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03010.txt @@ -0,0 +1 @@ +1 0.494140625 0.3870056497175141 0.36328125 0.6214689265536724 diff --git a/yolo_mindspore/dataset/mask/labels/train/03020.txt b/yolo_mindspore/dataset/mask/labels/train/03020.txt new file mode 100644 index 0000000..006d48f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03020.txt @@ -0,0 +1 @@ +1 0.49560546875 0.3524829600778968 0.4423828125 0.5939629990262902 diff --git a/yolo_mindspore/dataset/mask/labels/train/03030.txt b/yolo_mindspore/dataset/mask/labels/train/03030.txt new file mode 100644 index 0000000..8bcc0a0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03030.txt @@ -0,0 +1 @@ +1 0.5088541666666666 0.4027777777777778 0.221875 0.4981481481481482 diff --git a/yolo_mindspore/dataset/mask/labels/train/03040.txt b/yolo_mindspore/dataset/mask/labels/train/03040.txt new file mode 100644 index 0000000..dd0bd81 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03040.txt @@ -0,0 +1 @@ +1 0.41357421875 0.17708333333333334 0.1708984375 0.24375 diff --git a/yolo_mindspore/dataset/mask/labels/train/03050.txt b/yolo_mindspore/dataset/mask/labels/train/03050.txt new file mode 100644 index 0000000..4950976 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03050.txt @@ -0,0 +1,3 @@ +1 0.146 0.44266666666666665 0.108 0.18666666666666665 +1 0.313 0.484 0.114 0.14133333333333334 +1 0.559 0.4706666666666667 0.058 0.09333333333333332 diff --git a/yolo_mindspore/dataset/mask/labels/train/03060.txt b/yolo_mindspore/dataset/mask/labels/train/03060.txt new file mode 100644 index 0000000..4e21eb9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03060.txt @@ -0,0 +1 @@ +1 0.53828125 0.34375 0.2015625 0.2875 diff --git a/yolo_mindspore/dataset/mask/labels/train/03070.txt b/yolo_mindspore/dataset/mask/labels/train/03070.txt new file mode 100644 index 0000000..a15672b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03070.txt @@ -0,0 +1 @@ +1 0.51025390625 0.3758223684210526 0.1728515625 0.38980263157894735 diff --git a/yolo_mindspore/dataset/mask/labels/train/03080.txt b/yolo_mindspore/dataset/mask/labels/train/03080.txt new file mode 100644 index 0000000..ce3c86d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03080.txt @@ -0,0 +1 @@ +1 0.45654296875 0.31554524361948955 0.3544921875 0.48491879350348027 diff --git a/yolo_mindspore/dataset/mask/labels/train/03090.txt b/yolo_mindspore/dataset/mask/labels/train/03090.txt new file mode 100644 index 0000000..88515b7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03090.txt @@ -0,0 +1 @@ +1 0.521875 0.5291666666666667 0.2 0.2875 diff --git a/yolo_mindspore/dataset/mask/labels/train/03100.txt b/yolo_mindspore/dataset/mask/labels/train/03100.txt new file mode 100644 index 0000000..982ba62 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03100.txt @@ -0,0 +1,4 @@ +1 0.261 0.42342342342342343 0.13 0.26426426426426425 +1 0.453 0.4519519519519519 0.126 0.30930930930930933 +1 0.537 0.5540540540540541 0.078 0.23723723723723725 +1 0.645 0.46546546546546547 0.122 0.25225225225225223 diff --git a/yolo_mindspore/dataset/mask/labels/train/03110.txt b/yolo_mindspore/dataset/mask/labels/train/03110.txt new file mode 100644 index 0000000..00e117b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03110.txt @@ -0,0 +1 @@ +1 0.494140625 0.34132124352331605 0.462890625 0.5064766839378239 diff --git a/yolo_mindspore/dataset/mask/labels/train/03120.txt b/yolo_mindspore/dataset/mask/labels/train/03120.txt new file mode 100644 index 0000000..366e1f4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03120.txt @@ -0,0 +1 @@ +1 0.51708984375 0.32877604166666663 0.6083984375 0.4739583333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/03130.txt b/yolo_mindspore/dataset/mask/labels/train/03130.txt new file mode 100644 index 0000000..4926785 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03130.txt @@ -0,0 +1 @@ +1 0.42138671875 0.2075799721835883 0.3955078125 0.28442280945758 diff --git a/yolo_mindspore/dataset/mask/labels/train/03140.txt b/yolo_mindspore/dataset/mask/labels/train/03140.txt new file mode 100644 index 0000000..8cd019d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03140.txt @@ -0,0 +1 @@ +1 0.3681640625 0.408203125 0.2890625 0.47265625 diff --git a/yolo_mindspore/dataset/mask/labels/train/03150.txt b/yolo_mindspore/dataset/mask/labels/train/03150.txt new file mode 100644 index 0000000..001b728 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03150.txt @@ -0,0 +1 @@ +1 0.50625 0.5010416666666666 0.20625000000000002 0.3145833333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/03160.txt b/yolo_mindspore/dataset/mask/labels/train/03160.txt new file mode 100644 index 0000000..40c930e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03160.txt @@ -0,0 +1 @@ +1 0.4248046875 0.25811688311688313 0.521484375 0.4564935064935065 diff --git a/yolo_mindspore/dataset/mask/labels/train/03180.txt b/yolo_mindspore/dataset/mask/labels/train/03180.txt new file mode 100644 index 0000000..726e778 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03180.txt @@ -0,0 +1 @@ +1 0.490234375 0.2043509272467903 0.44140625 0.3459343794579173 diff --git a/yolo_mindspore/dataset/mask/labels/train/03190.txt b/yolo_mindspore/dataset/mask/labels/train/03190.txt new file mode 100644 index 0000000..b19cba5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03190.txt @@ -0,0 +1 @@ +1 0.56171875 0.36666666666666664 0.16718750000000002 0.26666666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/03200.txt b/yolo_mindspore/dataset/mask/labels/train/03200.txt new file mode 100644 index 0000000..95cb5f5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03200.txt @@ -0,0 +1 @@ +1 0.50634765625 0.20454545454545453 0.3408203125 0.3401253918495298 diff --git a/yolo_mindspore/dataset/mask/labels/train/03210.txt b/yolo_mindspore/dataset/mask/labels/train/03210.txt new file mode 100644 index 0000000..adaf77f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03210.txt @@ -0,0 +1 @@ +1 0.2119140625 0.2934936350777935 0.216796875 0.38613861386138615 diff --git a/yolo_mindspore/dataset/mask/labels/train/03220.txt b/yolo_mindspore/dataset/mask/labels/train/03220.txt new file mode 100644 index 0000000..a1db8e9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03220.txt @@ -0,0 +1 @@ +1 0.3193359375 0.3185763888888889 0.25 0.5711805555555555 diff --git a/yolo_mindspore/dataset/mask/labels/train/03230.txt b/yolo_mindspore/dataset/mask/labels/train/03230.txt new file mode 100644 index 0000000..a70457a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03230.txt @@ -0,0 +1,2 @@ +1 0.2548828125 0.41180981595092025 0.15234375 0.15184049079754602 +1 0.42333984375 0.41641104294478526 0.1416015625 0.1441717791411043 diff --git a/yolo_mindspore/dataset/mask/labels/train/03240.txt b/yolo_mindspore/dataset/mask/labels/train/03240.txt new file mode 100644 index 0000000..3326881 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03240.txt @@ -0,0 +1 @@ +1 0.51611328125 0.40995607613469986 0.2509765625 0.4890190336749634 diff --git a/yolo_mindspore/dataset/mask/labels/train/03260.txt b/yolo_mindspore/dataset/mask/labels/train/03260.txt new file mode 100644 index 0000000..f7c5c84 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03260.txt @@ -0,0 +1 @@ +1 0.494140625 0.28527370855821127 0.5078125 0.4518118735543562 diff --git a/yolo_mindspore/dataset/mask/labels/train/03270.txt b/yolo_mindspore/dataset/mask/labels/train/03270.txt new file mode 100644 index 0000000..ed854e6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03270.txt @@ -0,0 +1 @@ +1 0.47119140625 0.40478515625 0.4404296875 0.4853515625 diff --git a/yolo_mindspore/dataset/mask/labels/train/03280.txt b/yolo_mindspore/dataset/mask/labels/train/03280.txt new file mode 100644 index 0000000..106b0fe --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03280.txt @@ -0,0 +1 @@ +1 0.5166015625 0.3199013157894737 0.41015625 0.42105263157894735 diff --git a/yolo_mindspore/dataset/mask/labels/train/03290.txt b/yolo_mindspore/dataset/mask/labels/train/03290.txt new file mode 100644 index 0000000..cb6e448 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03290.txt @@ -0,0 +1 @@ +1 0.5554687500000001 0.41875 0.17343750000000002 0.2583333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/03300.txt b/yolo_mindspore/dataset/mask/labels/train/03300.txt new file mode 100644 index 0000000..1565acf --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03300.txt @@ -0,0 +1,2 @@ +1 0.60498046875 0.22840409956076135 0.3701171875 0.376281112737921 +1 0.0791015625 0.41654465592972184 0.138671875 0.24597364568081992 diff --git a/yolo_mindspore/dataset/mask/labels/train/03310.txt b/yolo_mindspore/dataset/mask/labels/train/03310.txt new file mode 100644 index 0000000..32890ca --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03310.txt @@ -0,0 +1 @@ +1 0.5046875 0.37777777777777777 0.23645833333333333 0.6111111111111112 diff --git a/yolo_mindspore/dataset/mask/labels/train/03320.txt b/yolo_mindspore/dataset/mask/labels/train/03320.txt new file mode 100644 index 0000000..186040e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03320.txt @@ -0,0 +1 @@ +1 0.5283203125 0.16703296703296702 0.154296875 0.17435897435897435 diff --git a/yolo_mindspore/dataset/mask/labels/train/03330.txt b/yolo_mindspore/dataset/mask/labels/train/03330.txt new file mode 100644 index 0000000..c61f647 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03330.txt @@ -0,0 +1 @@ +1 0.5828125000000001 0.471875 0.20625000000000002 0.3229166666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/03340.txt b/yolo_mindspore/dataset/mask/labels/train/03340.txt new file mode 100644 index 0000000..cb919bb --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03340.txt @@ -0,0 +1 @@ +1 0.64697265625 0.25045703839122485 0.3193359375 0.43144424131627057 diff --git a/yolo_mindspore/dataset/mask/labels/train/03350.txt b/yolo_mindspore/dataset/mask/labels/train/03350.txt new file mode 100644 index 0000000..f1e5647 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03350.txt @@ -0,0 +1 @@ +1 0.51953125 0.43645833333333334 0.22031250000000002 0.3520833333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/03360.txt b/yolo_mindspore/dataset/mask/labels/train/03360.txt new file mode 100644 index 0000000..029406a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03360.txt @@ -0,0 +1 @@ +1 0.5265625 0.434375 0.184375 0.26875 diff --git a/yolo_mindspore/dataset/mask/labels/train/03370.txt b/yolo_mindspore/dataset/mask/labels/train/03370.txt new file mode 100644 index 0000000..7214317 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03370.txt @@ -0,0 +1 @@ +1 0.56796875 0.45 0.1765625 0.2708333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/03380.txt b/yolo_mindspore/dataset/mask/labels/train/03380.txt new file mode 100644 index 0000000..4234d5c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03380.txt @@ -0,0 +1,2 @@ +1 0.77 0.2912912912912913 0.132 0.23423423423423423 +1 0.41600000000000004 0.13663663663663664 0.08 0.14114114114114115 diff --git a/yolo_mindspore/dataset/mask/labels/train/03390.txt b/yolo_mindspore/dataset/mask/labels/train/03390.txt new file mode 100644 index 0000000..0c99585 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03390.txt @@ -0,0 +1 @@ +1 0.48486328125 0.22216981132075472 0.2060546875 0.24433962264150944 diff --git a/yolo_mindspore/dataset/mask/labels/train/03400.txt b/yolo_mindspore/dataset/mask/labels/train/03400.txt new file mode 100644 index 0000000..984ef66 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03400.txt @@ -0,0 +1 @@ +1 0.51328125 0.44479166666666664 0.19843750000000002 0.3104166666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/03410.txt b/yolo_mindspore/dataset/mask/labels/train/03410.txt new file mode 100644 index 0000000..8fca366 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03410.txt @@ -0,0 +1 @@ +1 0.49531250000000004 0.4302083333333333 0.25 0.3854166666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/03420.txt b/yolo_mindspore/dataset/mask/labels/train/03420.txt new file mode 100644 index 0000000..5564af7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03420.txt @@ -0,0 +1 @@ +1 0.51123046875 0.2866761162296244 0.4755859375 0.3692416725726435 diff --git a/yolo_mindspore/dataset/mask/labels/train/03430.txt b/yolo_mindspore/dataset/mask/labels/train/03430.txt new file mode 100644 index 0000000..54c9803 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03430.txt @@ -0,0 +1 @@ +1 0.4990234375 0.2351369405477622 0.3984375 0.35136940547762197 diff --git a/yolo_mindspore/dataset/mask/labels/train/03440.txt b/yolo_mindspore/dataset/mask/labels/train/03440.txt new file mode 100644 index 0000000..81e0e89 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03440.txt @@ -0,0 +1 @@ +1 0.6279296875 0.19965277777777776 0.173828125 0.38888888888888884 diff --git a/yolo_mindspore/dataset/mask/labels/train/03450.txt b/yolo_mindspore/dataset/mask/labels/train/03450.txt new file mode 100644 index 0000000..7f32d41 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03450.txt @@ -0,0 +1 @@ +1 0.33544921875 0.310546875 0.1533203125 0.38671875 diff --git a/yolo_mindspore/dataset/mask/labels/train/03460.txt b/yolo_mindspore/dataset/mask/labels/train/03460.txt new file mode 100644 index 0000000..833ac09 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03460.txt @@ -0,0 +1 @@ +1 0.52890625 0.403125 0.1859375 0.28541666666666665 diff --git a/yolo_mindspore/dataset/mask/labels/train/03470.txt b/yolo_mindspore/dataset/mask/labels/train/03470.txt new file mode 100644 index 0000000..68ba79c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03470.txt @@ -0,0 +1 @@ +1 0.42919921875 0.3693579148124603 0.6650390625 0.59631277813096 diff --git a/yolo_mindspore/dataset/mask/labels/train/03480.txt b/yolo_mindspore/dataset/mask/labels/train/03480.txt new file mode 100644 index 0000000..0587b38 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03480.txt @@ -0,0 +1 @@ +1 0.4765625 0.16136363636363638 0.232421875 0.2448051948051948 diff --git a/yolo_mindspore/dataset/mask/labels/train/03490.txt b/yolo_mindspore/dataset/mask/labels/train/03490.txt new file mode 100644 index 0000000..843c7c2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03490.txt @@ -0,0 +1,4 @@ +1 0.28125 0.5527086383601757 0.123046875 0.18887262079062958 +1 0.47314453125 0.4882869692532943 0.1103515625 0.20351390922401172 +1 0.6435546875 0.4758418740849195 0.12109375 0.22840409956076135 +1 0.84375 0.4641288433382138 0.1640625 0.2840409956076135 diff --git a/yolo_mindspore/dataset/mask/labels/train/03500.txt b/yolo_mindspore/dataset/mask/labels/train/03500.txt new file mode 100644 index 0000000..4d1b310 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03500.txt @@ -0,0 +1 @@ +1 0.43017578125 0.20245398773006135 0.4150390625 0.35991820040899797 diff --git a/yolo_mindspore/dataset/mask/labels/train/03510.txt b/yolo_mindspore/dataset/mask/labels/train/03510.txt new file mode 100644 index 0000000..1173acc --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03510.txt @@ -0,0 +1 @@ +1 0.3214285714285714 0.22 0.23529411764705882 0.248 diff --git a/yolo_mindspore/dataset/mask/labels/train/03520.txt b/yolo_mindspore/dataset/mask/labels/train/03520.txt new file mode 100644 index 0000000..7da6ca7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03520.txt @@ -0,0 +1 @@ +1 0.505859375 0.30018331805682863 0.2734375 0.2923923006416132 diff --git a/yolo_mindspore/dataset/mask/labels/train/03530.txt b/yolo_mindspore/dataset/mask/labels/train/03530.txt new file mode 100644 index 0000000..8c59de1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03530.txt @@ -0,0 +1 @@ +1 0.49365234375 0.3204647676161919 0.5048828125 0.4760119940029985 diff --git a/yolo_mindspore/dataset/mask/labels/train/03540.txt b/yolo_mindspore/dataset/mask/labels/train/03540.txt new file mode 100644 index 0000000..ee828f6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03540.txt @@ -0,0 +1 @@ +1 0.7140625 0.5770833333333333 0.25 0.3958333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/03550.txt b/yolo_mindspore/dataset/mask/labels/train/03550.txt new file mode 100644 index 0000000..87575b0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03550.txt @@ -0,0 +1 @@ +1 0.49853515625 0.28475336322869954 0.2275390625 0.3632286995515695 diff --git a/yolo_mindspore/dataset/mask/labels/train/03560.txt b/yolo_mindspore/dataset/mask/labels/train/03560.txt new file mode 100644 index 0000000..048692d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03560.txt @@ -0,0 +1 @@ +1 0.55517578125 0.292156862745098 0.3427734375 0.28366013071895424 diff --git a/yolo_mindspore/dataset/mask/labels/train/03570.txt b/yolo_mindspore/dataset/mask/labels/train/03570.txt new file mode 100644 index 0000000..fd2e854 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03570.txt @@ -0,0 +1 @@ +1 0.490234375 0.287506819421713 0.70703125 0.5455537370430987 diff --git a/yolo_mindspore/dataset/mask/labels/train/03580.txt b/yolo_mindspore/dataset/mask/labels/train/03580.txt new file mode 100644 index 0000000..866cb00 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03580.txt @@ -0,0 +1,2 @@ +1 0.31884765625 0.09913419913419913 0.1435546875 0.129004329004329 +1 0.55078125 0.09653679653679653 0.140625 0.15324675324675324 diff --git a/yolo_mindspore/dataset/mask/labels/train/03590.txt b/yolo_mindspore/dataset/mask/labels/train/03590.txt new file mode 100644 index 0000000..2c71752 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03590.txt @@ -0,0 +1 @@ +1 0.5 0.1768929503916449 0.306640625 0.2297650130548303 diff --git a/yolo_mindspore/dataset/mask/labels/train/03600.txt b/yolo_mindspore/dataset/mask/labels/train/03600.txt new file mode 100644 index 0000000..cc4829e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03600.txt @@ -0,0 +1 @@ +1 0.52392578125 0.3766990291262136 0.3388671875 0.26925566343042073 diff --git a/yolo_mindspore/dataset/mask/labels/train/03610.txt b/yolo_mindspore/dataset/mask/labels/train/03610.txt new file mode 100644 index 0000000..2821f3d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03610.txt @@ -0,0 +1 @@ +1 0.4859375 0.4927083333333333 0.203125 0.30625 diff --git a/yolo_mindspore/dataset/mask/labels/train/03620.txt b/yolo_mindspore/dataset/mask/labels/train/03620.txt new file mode 100644 index 0000000..09d2604 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03620.txt @@ -0,0 +1 @@ +1 0.5087890625 0.3486029889538661 0.42578125 0.3697205977907732 diff --git a/yolo_mindspore/dataset/mask/labels/train/03640.txt b/yolo_mindspore/dataset/mask/labels/train/03640.txt new file mode 100644 index 0000000..6453ff7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03640.txt @@ -0,0 +1 @@ +1 0.528 0.232 0.25066666666666665 0.256 diff --git a/yolo_mindspore/dataset/mask/labels/train/03650.txt b/yolo_mindspore/dataset/mask/labels/train/03650.txt new file mode 100644 index 0000000..710655e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03650.txt @@ -0,0 +1 @@ +1 0.3598958333333333 0.26203703703703707 0.20520833333333333 0.46111111111111114 diff --git a/yolo_mindspore/dataset/mask/labels/train/03660.txt b/yolo_mindspore/dataset/mask/labels/train/03660.txt new file mode 100644 index 0000000..8b14615 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03660.txt @@ -0,0 +1 @@ +1 0.5234375 0.43124999999999997 0.209375 0.2916666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/03670.txt b/yolo_mindspore/dataset/mask/labels/train/03670.txt new file mode 100644 index 0000000..3a32d2b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03670.txt @@ -0,0 +1 @@ +1 0.5632530120481928 0.34600000000000003 0.3132530120481928 0.268 diff --git a/yolo_mindspore/dataset/mask/labels/train/03690.txt b/yolo_mindspore/dataset/mask/labels/train/03690.txt new file mode 100644 index 0000000..0084308 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03690.txt @@ -0,0 +1 @@ +1 0.467 0.44744744744744747 0.09 0.18018018018018017 diff --git a/yolo_mindspore/dataset/mask/labels/train/03700.txt b/yolo_mindspore/dataset/mask/labels/train/03700.txt new file mode 100644 index 0000000..6428d36 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03700.txt @@ -0,0 +1 @@ +1 0.55234375 0.3333333333333333 0.19843750000000002 0.2833333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/03710.txt b/yolo_mindspore/dataset/mask/labels/train/03710.txt new file mode 100644 index 0000000..0169cfa --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03710.txt @@ -0,0 +1 @@ +1 0.4755859375 0.2998046875 0.568359375 0.474609375 diff --git a/yolo_mindspore/dataset/mask/labels/train/03720.txt b/yolo_mindspore/dataset/mask/labels/train/03720.txt new file mode 100644 index 0000000..22a36ed --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03720.txt @@ -0,0 +1 @@ +1 0.49755859375 0.2763671875 0.3095703125 0.40625 diff --git a/yolo_mindspore/dataset/mask/labels/train/03730.txt b/yolo_mindspore/dataset/mask/labels/train/03730.txt new file mode 100644 index 0000000..7feef0f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03730.txt @@ -0,0 +1 @@ +1 0.58984375 0.4083333333333333 0.1609375 0.23333333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/train/03740.txt b/yolo_mindspore/dataset/mask/labels/train/03740.txt new file mode 100644 index 0000000..cc23825 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03740.txt @@ -0,0 +1,2 @@ +1 0.521 0.5666666666666667 0.10200000000000001 0.152 +1 0.6960000000000001 0.5439999999999999 0.116 0.17066666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/03750.txt b/yolo_mindspore/dataset/mask/labels/train/03750.txt new file mode 100644 index 0000000..25f26f5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03750.txt @@ -0,0 +1 @@ +1 0.53828125 0.30833333333333335 0.16718750000000002 0.2875 diff --git a/yolo_mindspore/dataset/mask/labels/train/03760.txt b/yolo_mindspore/dataset/mask/labels/train/03760.txt new file mode 100644 index 0000000..935c51b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03760.txt @@ -0,0 +1 @@ +1 0.48095703125 0.3950097213220998 0.6064453125 0.5398574206092028 diff --git a/yolo_mindspore/dataset/mask/labels/train/03770.txt b/yolo_mindspore/dataset/mask/labels/train/03770.txt new file mode 100644 index 0000000..0152227 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03770.txt @@ -0,0 +1 @@ +1 0.5554687500000001 0.42604166666666665 0.2328125 0.32708333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/train/03780.txt b/yolo_mindspore/dataset/mask/labels/train/03780.txt new file mode 100644 index 0000000..e6f2ad9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03780.txt @@ -0,0 +1 @@ +1 0.5593750000000001 0.484375 0.21250000000000002 0.33958333333333335 diff --git a/yolo_mindspore/dataset/mask/labels/train/03790.txt b/yolo_mindspore/dataset/mask/labels/train/03790.txt new file mode 100644 index 0000000..e8dd539 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03790.txt @@ -0,0 +1 @@ +1 0.5126953125 0.1416015625 0.177734375 0.23046875 diff --git a/yolo_mindspore/dataset/mask/labels/train/03800.txt b/yolo_mindspore/dataset/mask/labels/train/03800.txt new file mode 100644 index 0000000..63a71bd --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03800.txt @@ -0,0 +1 @@ +1 0.5419921875 0.17950391644908617 0.34765625 0.24673629242819844 diff --git a/yolo_mindspore/dataset/mask/labels/train/03810.txt b/yolo_mindspore/dataset/mask/labels/train/03810.txt new file mode 100644 index 0000000..4a0fcbf --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03810.txt @@ -0,0 +1 @@ +1 0.50703125 0.40625 0.21406250000000002 0.30833333333333335 diff --git a/yolo_mindspore/dataset/mask/labels/train/03820.txt b/yolo_mindspore/dataset/mask/labels/train/03820.txt new file mode 100644 index 0000000..5fb0d15 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03820.txt @@ -0,0 +1 @@ +1 0.47900390625 0.32930809399477806 0.5693359375 0.5306788511749347 diff --git a/yolo_mindspore/dataset/mask/labels/train/03830.txt b/yolo_mindspore/dataset/mask/labels/train/03830.txt new file mode 100644 index 0000000..8291549 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03830.txt @@ -0,0 +1 @@ +1 0.4326171875 0.2803819444444444 0.201171875 0.43229166666666663 diff --git a/yolo_mindspore/dataset/mask/labels/train/03840.txt b/yolo_mindspore/dataset/mask/labels/train/03840.txt new file mode 100644 index 0000000..126daaa --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03840.txt @@ -0,0 +1,2 @@ +1 0.15625 0.4773060029282577 0.1953125 0.17715959004392387 +1 0.75439453125 0.1965592972181552 0.2255859375 0.19692532942898977 diff --git a/yolo_mindspore/dataset/mask/labels/train/03850.txt b/yolo_mindspore/dataset/mask/labels/train/03850.txt new file mode 100644 index 0000000..fe68da7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03850.txt @@ -0,0 +1 @@ +1 0.60791015625 0.244921875 0.4423828125 0.42890625000000004 diff --git a/yolo_mindspore/dataset/mask/labels/train/03860.txt b/yolo_mindspore/dataset/mask/labels/train/03860.txt new file mode 100644 index 0000000..41ad7c7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03860.txt @@ -0,0 +1 @@ +1 0.552734375 0.3142978003384095 0.365234375 0.4069373942470389 diff --git a/yolo_mindspore/dataset/mask/labels/train/03870.txt b/yolo_mindspore/dataset/mask/labels/train/03870.txt new file mode 100644 index 0000000..2446ba0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03870.txt @@ -0,0 +1 @@ +1 0.6123046875 0.6698389458272328 0.55078125 0.5358711566617862 diff --git a/yolo_mindspore/dataset/mask/labels/train/03880.txt b/yolo_mindspore/dataset/mask/labels/train/03880.txt new file mode 100644 index 0000000..8a9e36a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03880.txt @@ -0,0 +1 @@ +1 0.52001953125 0.38810900082576383 0.5908203125 0.6127167630057803 diff --git a/yolo_mindspore/dataset/mask/labels/train/03890.txt b/yolo_mindspore/dataset/mask/labels/train/03890.txt new file mode 100644 index 0000000..71ddf9e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03890.txt @@ -0,0 +1 @@ +1 0.40576171875 0.40441176470588236 0.2392578125 0.41470588235294115 diff --git a/yolo_mindspore/dataset/mask/labels/train/03900.txt b/yolo_mindspore/dataset/mask/labels/train/03900.txt new file mode 100644 index 0000000..6154eff --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03900.txt @@ -0,0 +1,4 @@ +1 0.24365234375 0.17797783933518005 0.1435546875 0.2590027700831025 +1 0.724609375 0.29293628808864264 0.130859375 0.203601108033241 +1 0.45751953125 0.3171745152354571 0.0986328125 0.19390581717451524 +1 0.3388671875 0.30678670360110805 0.0703125 0.1703601108033241 diff --git a/yolo_mindspore/dataset/mask/labels/train/03910.txt b/yolo_mindspore/dataset/mask/labels/train/03910.txt new file mode 100644 index 0000000..c7a4408 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03910.txt @@ -0,0 +1 @@ +1 0.5906250000000001 0.39479166666666665 0.1875 0.33125 diff --git a/yolo_mindspore/dataset/mask/labels/train/03920.txt b/yolo_mindspore/dataset/mask/labels/train/03920.txt new file mode 100644 index 0000000..ae44643 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03920.txt @@ -0,0 +1 @@ +1 0.5203125000000001 0.44166666666666665 0.18125000000000002 0.2875 diff --git a/yolo_mindspore/dataset/mask/labels/train/03930.txt b/yolo_mindspore/dataset/mask/labels/train/03930.txt new file mode 100644 index 0000000..56cffb2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03930.txt @@ -0,0 +1 @@ +1 0.515625 0.40625 0.209375 0.2791666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/03940.txt b/yolo_mindspore/dataset/mask/labels/train/03940.txt new file mode 100644 index 0000000..f43667e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03940.txt @@ -0,0 +1 @@ +1 0.4609375 0.20795306388526727 0.357421875 0.3350717079530639 diff --git a/yolo_mindspore/dataset/mask/labels/train/03950.txt b/yolo_mindspore/dataset/mask/labels/train/03950.txt new file mode 100644 index 0000000..05f3bfa --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03950.txt @@ -0,0 +1,4 @@ +1 0.14990234375 0.4158125915080527 0.1083984375 0.21669106881405564 +1 0.36669921875 0.42752562225475843 0.1162109375 0.18740849194729137 +1 0.60009765625 0.32723279648609077 0.1220703125 0.22986822840409957 +1 0.87255859375 0.3440702781844802 0.1298828125 0.2664714494875549 diff --git a/yolo_mindspore/dataset/mask/labels/train/03960.txt b/yolo_mindspore/dataset/mask/labels/train/03960.txt new file mode 100644 index 0000000..2b25916 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03960.txt @@ -0,0 +1,4 @@ +1 0.23974609375 0.5833333333333334 0.1318359375 0.2535014005602241 +1 0.37060546875 0.5812324929971989 0.1318359375 0.25210084033613445 +1 0.52734375 0.6050420168067226 0.15234375 0.2857142857142857 +1 0.67529296875 0.43137254901960786 0.1376953125 0.25210084033613445 diff --git a/yolo_mindspore/dataset/mask/labels/train/03980.txt b/yolo_mindspore/dataset/mask/labels/train/03980.txt new file mode 100644 index 0000000..20536cb --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03980.txt @@ -0,0 +1 @@ +1 0.58828125 0.36041666666666666 0.1921875 0.30833333333333335 diff --git a/yolo_mindspore/dataset/mask/labels/train/03990.txt b/yolo_mindspore/dataset/mask/labels/train/03990.txt new file mode 100644 index 0000000..a592e9e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/03990.txt @@ -0,0 +1 @@ +1 0.56875 0.3854166666666667 0.15000000000000002 0.25 diff --git a/yolo_mindspore/dataset/mask/labels/train/04000.txt b/yolo_mindspore/dataset/mask/labels/train/04000.txt new file mode 100644 index 0000000..aa5eb4e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04000.txt @@ -0,0 +1,2 @@ +1 0.30224609375 0.2601010101010101 0.3369140625 0.33261183261183264 +1 0.76708984375 0.2976190476190476 0.3583984375 0.3297258297258297 diff --git a/yolo_mindspore/dataset/mask/labels/train/04010.txt b/yolo_mindspore/dataset/mask/labels/train/04010.txt new file mode 100644 index 0000000..2462ef2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04010.txt @@ -0,0 +1 @@ +1 0.55078125 0.34479166666666666 0.1640625 0.27708333333333335 diff --git a/yolo_mindspore/dataset/mask/labels/train/04020.txt b/yolo_mindspore/dataset/mask/labels/train/04020.txt new file mode 100644 index 0000000..5cb9a06 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04020.txt @@ -0,0 +1,4 @@ +1 0.34375 0.43135345666991237 0.138671875 0.18500486854917236 +1 0.56103515625 0.4917234664070107 0.1552734375 0.2103213242453749 +1 0.83447265625 0.49318403115871473 0.1630859375 0.19376825705939632 +1 0.4638671875 0.1679649464459591 0.1484375 0.17429406037000975 diff --git a/yolo_mindspore/dataset/mask/labels/train/04030.txt b/yolo_mindspore/dataset/mask/labels/train/04030.txt new file mode 100644 index 0000000..03723ff --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04030.txt @@ -0,0 +1,2 @@ +1 0.34 0.3413173652694611 0.192 0.4191616766467066 +1 0.556 0.344311377245509 0.20400000000000001 0.39520958083832336 diff --git a/yolo_mindspore/dataset/mask/labels/train/04040.txt b/yolo_mindspore/dataset/mask/labels/train/04040.txt new file mode 100644 index 0000000..2525c36 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04040.txt @@ -0,0 +1 @@ +1 0.5476562500000001 0.4322916666666667 0.1765625 0.26875 diff --git a/yolo_mindspore/dataset/mask/labels/train/04050.txt b/yolo_mindspore/dataset/mask/labels/train/04050.txt new file mode 100644 index 0000000..7aeda55 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04050.txt @@ -0,0 +1 @@ +1 0.54296875 0.4166666666666667 0.21406250000000002 0.3458333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/04060.txt b/yolo_mindspore/dataset/mask/labels/train/04060.txt new file mode 100644 index 0000000..8c3457e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04060.txt @@ -0,0 +1 @@ +1 0.31982421875 0.38643737832576247 0.6337890625 0.5885788449059052 diff --git a/yolo_mindspore/dataset/mask/labels/train/04070.txt b/yolo_mindspore/dataset/mask/labels/train/04070.txt new file mode 100644 index 0000000..b112600 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04070.txt @@ -0,0 +1,2 @@ +1 0.28125 0.189453125 0.1796875 0.35026041666666663 +1 0.71728515625 0.306640625 0.1767578125 0.29296875 diff --git a/yolo_mindspore/dataset/mask/labels/train/04080.txt b/yolo_mindspore/dataset/mask/labels/train/04080.txt new file mode 100644 index 0000000..ea2d252 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04080.txt @@ -0,0 +1 @@ +1 0.478515625 0.31510791366906477 0.419921875 0.460431654676259 diff --git a/yolo_mindspore/dataset/mask/labels/train/04090.txt b/yolo_mindspore/dataset/mask/labels/train/04090.txt new file mode 100644 index 0000000..56cb8d1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04090.txt @@ -0,0 +1 @@ +1 0.40087890625 0.32159017453135097 0.4326171875 0.3665158371040724 diff --git a/yolo_mindspore/dataset/mask/labels/train/04100.txt b/yolo_mindspore/dataset/mask/labels/train/04100.txt new file mode 100644 index 0000000..2102808 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04100.txt @@ -0,0 +1 @@ +1 0.42529296875 0.31773879142300193 0.5224609375 0.4756335282651072 diff --git a/yolo_mindspore/dataset/mask/labels/train/04110.txt b/yolo_mindspore/dataset/mask/labels/train/04110.txt new file mode 100644 index 0000000..7b397d1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04110.txt @@ -0,0 +1 @@ +1 0.5078125 0.1801831262262917 0.306640625 0.27795945062132116 diff --git a/yolo_mindspore/dataset/mask/labels/train/04120.txt b/yolo_mindspore/dataset/mask/labels/train/04120.txt new file mode 100644 index 0000000..4417be3 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04120.txt @@ -0,0 +1 @@ +1 0.48984375 0.3208333333333333 0.2234375 0.3458333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/04130.txt b/yolo_mindspore/dataset/mask/labels/train/04130.txt new file mode 100644 index 0000000..1e185e4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04130.txt @@ -0,0 +1 @@ +1 0.47998046875 0.322692793931732 0.7392578125 0.5619469026548674 diff --git a/yolo_mindspore/dataset/mask/labels/train/04140.txt b/yolo_mindspore/dataset/mask/labels/train/04140.txt new file mode 100644 index 0000000..637fe4c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04140.txt @@ -0,0 +1 @@ +1 0.4404296875 0.4139834406623735 0.478515625 0.702851885924563 diff --git a/yolo_mindspore/dataset/mask/labels/train/04150.txt b/yolo_mindspore/dataset/mask/labels/train/04150.txt new file mode 100644 index 0000000..1bb30a4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04150.txt @@ -0,0 +1 @@ +1 0.5104166666666666 0.4203703703703704 0.15833333333333333 0.3703703703703704 diff --git a/yolo_mindspore/dataset/mask/labels/train/04160.txt b/yolo_mindspore/dataset/mask/labels/train/04160.txt new file mode 100644 index 0000000..44c0998 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04160.txt @@ -0,0 +1,3 @@ +1 0.133 0.39066666666666666 0.178 0.25866666666666666 +1 0.425 0.38666666666666666 0.17 0.2773333333333333 +1 0.893 0.3973333333333333 0.214 0.30933333333333335 diff --git a/yolo_mindspore/dataset/mask/labels/train/04170.txt b/yolo_mindspore/dataset/mask/labels/train/04170.txt new file mode 100644 index 0000000..3ced99b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04170.txt @@ -0,0 +1 @@ +1 0.4404296875 0.36961869618696186 0.384765625 0.5842558425584256 diff --git a/yolo_mindspore/dataset/mask/labels/train/04180.txt b/yolo_mindspore/dataset/mask/labels/train/04180.txt new file mode 100644 index 0000000..6ff76b9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04180.txt @@ -0,0 +1 @@ +1 0.50537109375 0.2179987004548408 0.3447265625 0.25795971410006496 diff --git a/yolo_mindspore/dataset/mask/labels/train/04190.txt b/yolo_mindspore/dataset/mask/labels/train/04190.txt new file mode 100644 index 0000000..2734394 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04190.txt @@ -0,0 +1,2 @@ +1 0.3067708333333333 0.32592592592592595 0.159375 0.33333333333333337 +1 0.8791666666666667 0.2675925925925926 0.24166666666666667 0.4537037037037037 diff --git a/yolo_mindspore/dataset/mask/labels/train/04200.txt b/yolo_mindspore/dataset/mask/labels/train/04200.txt new file mode 100644 index 0000000..b01df93 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04200.txt @@ -0,0 +1 @@ +1 0.50927734375 0.2456597222222222 0.1337890625 0.2864583333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/04210.txt b/yolo_mindspore/dataset/mask/labels/train/04210.txt new file mode 100644 index 0000000..14fe18d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04210.txt @@ -0,0 +1 @@ +1 0.5380859375 0.2641374373657838 0.4765625 0.3779527559055118 diff --git a/yolo_mindspore/dataset/mask/labels/train/04220.txt b/yolo_mindspore/dataset/mask/labels/train/04220.txt new file mode 100644 index 0000000..467d9ae --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04220.txt @@ -0,0 +1 @@ +1 0.47216796875 0.14713541666666666 0.3037109375 0.24739583333333331 diff --git a/yolo_mindspore/dataset/mask/labels/train/04230.txt b/yolo_mindspore/dataset/mask/labels/train/04230.txt new file mode 100644 index 0000000..72c76d0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04230.txt @@ -0,0 +1 @@ +1 0.52265625 0.31875 0.2078125 0.32916666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/04240.txt b/yolo_mindspore/dataset/mask/labels/train/04240.txt new file mode 100644 index 0000000..373561d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04240.txt @@ -0,0 +1 @@ +1 0.42529296875 0.28081123244929795 0.2099609375 0.39001560062402496 diff --git a/yolo_mindspore/dataset/mask/labels/train/04250.txt b/yolo_mindspore/dataset/mask/labels/train/04250.txt new file mode 100644 index 0000000..b94ade0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04250.txt @@ -0,0 +1,3 @@ +1 0.23600000000000002 0.41466666666666663 0.156 0.21066666666666667 +1 0.424 0.36266666666666664 0.084 0.12266666666666666 +1 0.8320000000000001 0.308 0.124 0.216 diff --git a/yolo_mindspore/dataset/mask/labels/train/04260.txt b/yolo_mindspore/dataset/mask/labels/train/04260.txt new file mode 100644 index 0000000..8fa6185 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04260.txt @@ -0,0 +1,5 @@ +1 0.1337890625 0.15427769985974754 0.091796875 0.1514726507713885 +1 0.3251953125 0.19074333800841514 0.07421875 0.14305750350631136 +1 0.50927734375 0.15357643758765777 0.0888671875 0.15287517531556802 +1 0.71533203125 0.16690042075736325 0.0908203125 0.1514726507713885 +1 0.890625 0.15007012622720897 0.099609375 0.16269284712482468 diff --git a/yolo_mindspore/dataset/mask/labels/train/04270.txt b/yolo_mindspore/dataset/mask/labels/train/04270.txt new file mode 100644 index 0000000..d2296ca --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04270.txt @@ -0,0 +1 @@ +1 0.478515625 0.17378497790868924 0.259765625 0.2312223858615611 diff --git a/yolo_mindspore/dataset/mask/labels/train/04280.txt b/yolo_mindspore/dataset/mask/labels/train/04280.txt new file mode 100644 index 0000000..12fca71 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04280.txt @@ -0,0 +1,2 @@ +1 0.50244140625 0.26863253402462733 0.3056640625 0.17692806221646143 +1 0.84130859375 0.15327284510693454 0.3173828125 0.23007128969539858 diff --git a/yolo_mindspore/dataset/mask/labels/train/04290.txt b/yolo_mindspore/dataset/mask/labels/train/04290.txt new file mode 100644 index 0000000..4bff323 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04290.txt @@ -0,0 +1 @@ +1 0.3564453125 0.3831380208333333 0.28515625 0.21419270833333331 diff --git a/yolo_mindspore/dataset/mask/labels/train/04300.txt b/yolo_mindspore/dataset/mask/labels/train/04300.txt new file mode 100644 index 0000000..b0a9a38 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04300.txt @@ -0,0 +1 @@ +1 0.50439453125 0.25875486381322954 0.2822265625 0.23605706874189364 diff --git a/yolo_mindspore/dataset/mask/labels/train/04310.txt b/yolo_mindspore/dataset/mask/labels/train/04310.txt new file mode 100644 index 0000000..e37aec5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04310.txt @@ -0,0 +1,3 @@ +1 0.24755859375 0.2725381414701803 0.1904296875 0.37586685159500693 +1 0.60791015625 0.25173370319001387 0.1787109375 0.31484049930651875 +1 0.85009765625 0.4056865464632455 0.1376953125 0.34535367545076284 diff --git a/yolo_mindspore/dataset/mask/labels/train/04320.txt b/yolo_mindspore/dataset/mask/labels/train/04320.txt new file mode 100644 index 0000000..a5fc30e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04320.txt @@ -0,0 +1 @@ +1 0.276 0.18133333333333332 0.088 0.128 diff --git a/yolo_mindspore/dataset/mask/labels/train/04330.txt b/yolo_mindspore/dataset/mask/labels/train/04330.txt new file mode 100644 index 0000000..c7f0083 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04330.txt @@ -0,0 +1 @@ +1 0.45654296875 0.29675324675324677 0.3779296875 0.3064935064935065 diff --git a/yolo_mindspore/dataset/mask/labels/train/04340.txt b/yolo_mindspore/dataset/mask/labels/train/04340.txt new file mode 100644 index 0000000..4331a4c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04340.txt @@ -0,0 +1 @@ +1 0.46875 0.3779296875 0.61328125 0.5891927083333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/04350.txt b/yolo_mindspore/dataset/mask/labels/train/04350.txt new file mode 100644 index 0000000..4987d47 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04350.txt @@ -0,0 +1 @@ +1 0.48984375 0.45 0.2015625 0.3208333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/04360.txt b/yolo_mindspore/dataset/mask/labels/train/04360.txt new file mode 100644 index 0000000..610becc --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04360.txt @@ -0,0 +1 @@ +1 0.5634765625 0.3133986928104575 0.6015625 0.5117647058823529 diff --git a/yolo_mindspore/dataset/mask/labels/train/04370.txt b/yolo_mindspore/dataset/mask/labels/train/04370.txt new file mode 100644 index 0000000..a8a7a35 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04370.txt @@ -0,0 +1 @@ +1 0.481 0.53003003003003 0.154 0.35735735735735735 diff --git a/yolo_mindspore/dataset/mask/labels/train/04380.txt b/yolo_mindspore/dataset/mask/labels/train/04380.txt new file mode 100644 index 0000000..7341e99 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04380.txt @@ -0,0 +1 @@ +1 0.47509765625 0.10944363103953147 0.2138671875 0.17057101024890192 diff --git a/yolo_mindspore/dataset/mask/labels/train/04390.txt b/yolo_mindspore/dataset/mask/labels/train/04390.txt new file mode 100644 index 0000000..0434250 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04390.txt @@ -0,0 +1,5 @@ +1 0.08349609375 0.42143906020558003 0.0654296875 0.14684287812041116 +1 0.279296875 0.4052863436123348 0.0703125 0.13215859030837004 +1 0.4921875 0.42584434654919234 0.076171875 0.1527165932452276 +1 0.693359375 0.4295154185022026 0.0859375 0.17180616740088106 +1 0.859375 0.4045521292217327 0.08203125 0.19236417033773862 diff --git a/yolo_mindspore/dataset/mask/labels/train/04400.txt b/yolo_mindspore/dataset/mask/labels/train/04400.txt new file mode 100644 index 0000000..d27079d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04400.txt @@ -0,0 +1 @@ +1 0.48876953125 0.24552429667519182 0.3154296875 0.3546462063086104 diff --git a/yolo_mindspore/dataset/mask/labels/train/04410.txt b/yolo_mindspore/dataset/mask/labels/train/04410.txt new file mode 100644 index 0000000..24b8048 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04410.txt @@ -0,0 +1 @@ +1 0.4794921875 0.28729641693811075 0.380859375 0.3622149837133551 diff --git a/yolo_mindspore/dataset/mask/labels/train/04420.txt b/yolo_mindspore/dataset/mask/labels/train/04420.txt new file mode 100644 index 0000000..ab466e2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04420.txt @@ -0,0 +1 @@ +1 0.4453125 0.2372535690006798 0.361328125 0.30591434398368456 diff --git a/yolo_mindspore/dataset/mask/labels/train/04430.txt b/yolo_mindspore/dataset/mask/labels/train/04430.txt new file mode 100644 index 0000000..5e55e1e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04430.txt @@ -0,0 +1 @@ +1 0.59375 0.37083333333333335 0.19062500000000002 0.2708333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/04440.txt b/yolo_mindspore/dataset/mask/labels/train/04440.txt new file mode 100644 index 0000000..5282494 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04440.txt @@ -0,0 +1 @@ +1 0.5400390625 0.4224011713030747 0.2578125 0.3850658857979502 diff --git a/yolo_mindspore/dataset/mask/labels/train/04450.txt b/yolo_mindspore/dataset/mask/labels/train/04450.txt new file mode 100644 index 0000000..ceb9bd8 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04450.txt @@ -0,0 +1 @@ +1 0.4345703125 0.2508122157244964 0.419921875 0.33398310591293046 diff --git a/yolo_mindspore/dataset/mask/labels/train/04460.txt b/yolo_mindspore/dataset/mask/labels/train/04460.txt new file mode 100644 index 0000000..1f1d6c4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04460.txt @@ -0,0 +1,3 @@ +1 0.2607421875 0.25302114803625375 0.154296875 0.26435045317220546 +1 0.54736328125 0.23036253776435045 0.1572265625 0.2794561933534743 +1 0.7783203125 0.2794561933534743 0.15234375 0.26586102719033233 diff --git a/yolo_mindspore/dataset/mask/labels/train/04470.txt b/yolo_mindspore/dataset/mask/labels/train/04470.txt new file mode 100644 index 0000000..7d6294d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04470.txt @@ -0,0 +1 @@ +1 0.5361328125 0.2883542538354254 0.484375 0.40655509065550904 diff --git a/yolo_mindspore/dataset/mask/labels/train/04480.txt b/yolo_mindspore/dataset/mask/labels/train/04480.txt new file mode 100644 index 0000000..4a7923d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04480.txt @@ -0,0 +1 @@ +1 0.532 0.22799999999999998 0.148 0.248 diff --git a/yolo_mindspore/dataset/mask/labels/train/04490.txt b/yolo_mindspore/dataset/mask/labels/train/04490.txt new file mode 100644 index 0000000..d93f44f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04490.txt @@ -0,0 +1 @@ +1 0.53466796875 0.42447916666666663 0.3173828125 0.5494791666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/04500.txt b/yolo_mindspore/dataset/mask/labels/train/04500.txt new file mode 100644 index 0000000..f4084bd --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04500.txt @@ -0,0 +1 @@ +1 0.5453125 0.43124999999999997 0.215625 0.29583333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/train/04510.txt b/yolo_mindspore/dataset/mask/labels/train/04510.txt new file mode 100644 index 0000000..3c0e739 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04510.txt @@ -0,0 +1 @@ +1 0.43115234375 0.37514188422247446 0.3701171875 0.4846765039727582 diff --git a/yolo_mindspore/dataset/mask/labels/train/04520.txt b/yolo_mindspore/dataset/mask/labels/train/04520.txt new file mode 100644 index 0000000..bcca340 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04520.txt @@ -0,0 +1 @@ +1 0.5484375 0.38229166666666664 0.2 0.29791666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/04530.txt b/yolo_mindspore/dataset/mask/labels/train/04530.txt new file mode 100644 index 0000000..73b64a5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04530.txt @@ -0,0 +1,2 @@ +1 0.2996987951807229 0.395 0.32228915662650603 0.28600000000000003 +1 0.6912650602409639 0.167 0.3283132530120482 0.298 diff --git a/yolo_mindspore/dataset/mask/labels/train/04540.txt b/yolo_mindspore/dataset/mask/labels/train/04540.txt new file mode 100644 index 0000000..cdb140b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04540.txt @@ -0,0 +1 @@ +1 0.52734375 0.27719665271966526 0.41015625 0.402370990237099 diff --git a/yolo_mindspore/dataset/mask/labels/train/04550.txt b/yolo_mindspore/dataset/mask/labels/train/04550.txt new file mode 100644 index 0000000..a72ca28 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04550.txt @@ -0,0 +1,2 @@ +1 0.322265625 0.2847222222222222 0.13671875 0.2534722222222222 +1 0.83837890625 0.34809027777777773 0.1162109375 0.2065972222222222 diff --git a/yolo_mindspore/dataset/mask/labels/train/04560.txt b/yolo_mindspore/dataset/mask/labels/train/04560.txt new file mode 100644 index 0000000..f64eb94 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04560.txt @@ -0,0 +1 @@ +1 0.45703125 0.18565683646112602 0.36328125 0.2828418230563003 diff --git a/yolo_mindspore/dataset/mask/labels/train/04580.txt b/yolo_mindspore/dataset/mask/labels/train/04580.txt new file mode 100644 index 0000000..05c9af7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04580.txt @@ -0,0 +1 @@ +1 0.48583984375 0.43769470404984423 0.3466796875 0.778816199376947 diff --git a/yolo_mindspore/dataset/mask/labels/train/04590.txt b/yolo_mindspore/dataset/mask/labels/train/04590.txt new file mode 100644 index 0000000..4811e0b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04590.txt @@ -0,0 +1 @@ +1 0.44287109375 0.21175311884438605 0.4052734375 0.39592908732764276 diff --git a/yolo_mindspore/dataset/mask/labels/train/04600.txt b/yolo_mindspore/dataset/mask/labels/train/04600.txt new file mode 100644 index 0000000..df1ae7e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04600.txt @@ -0,0 +1,2 @@ +1 0.18310546875 0.3340643274853801 0.1044921875 0.1739766081871345 +1 0.724609375 0.3384502923976608 0.12109375 0.20906432748538012 diff --git a/yolo_mindspore/dataset/mask/labels/train/04610.txt b/yolo_mindspore/dataset/mask/labels/train/04610.txt new file mode 100644 index 0000000..9431f6d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04610.txt @@ -0,0 +1 @@ +1 0.52578125 0.3875 0.22031250000000002 0.3458333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/04620.txt b/yolo_mindspore/dataset/mask/labels/train/04620.txt new file mode 100644 index 0000000..fbd601d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04620.txt @@ -0,0 +1,2 @@ +1 0.24166666666666667 0.3814814814814815 0.175 0.5037037037037038 +1 0.553125 0.3592592592592593 0.22708333333333333 0.45555555555555555 diff --git a/yolo_mindspore/dataset/mask/labels/train/04630.txt b/yolo_mindspore/dataset/mask/labels/train/04630.txt new file mode 100644 index 0000000..0eccaa7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04630.txt @@ -0,0 +1,2 @@ +1 0.26953125 0.20238095238095238 0.17578125 0.2927170868347339 +1 0.7841796875 0.22408963585434175 0.171875 0.2913165266106443 diff --git a/yolo_mindspore/dataset/mask/labels/train/04640.txt b/yolo_mindspore/dataset/mask/labels/train/04640.txt new file mode 100644 index 0000000..b494000 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04640.txt @@ -0,0 +1,2 @@ +1 0.19140625 0.3125 0.376953125 0.4495614035087719 +1 0.5673828125 0.3340643274853801 0.375 0.41666666666666663 diff --git a/yolo_mindspore/dataset/mask/labels/train/04650.txt b/yolo_mindspore/dataset/mask/labels/train/04650.txt new file mode 100644 index 0000000..05ebbb6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04650.txt @@ -0,0 +1 @@ +1 0.58056640625 0.2402088772845953 0.5048828125 0.3968668407310705 diff --git a/yolo_mindspore/dataset/mask/labels/train/04660.txt b/yolo_mindspore/dataset/mask/labels/train/04660.txt new file mode 100644 index 0000000..e23cfca --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04660.txt @@ -0,0 +1,2 @@ +1 0.429 0.35333333333333333 0.15 0.22133333333333333 +1 0.638 0.36533333333333334 0.156 0.2613333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/04670.txt b/yolo_mindspore/dataset/mask/labels/train/04670.txt new file mode 100644 index 0000000..4ec056e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04670.txt @@ -0,0 +1 @@ +1 0.36266666666666664 0.40900000000000003 0.27199999999999996 0.25 diff --git a/yolo_mindspore/dataset/mask/labels/train/04690.txt b/yolo_mindspore/dataset/mask/labels/train/04690.txt new file mode 100644 index 0000000..418d400 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04690.txt @@ -0,0 +1 @@ +1 0.47900000000000004 0.312 0.138 0.224 diff --git a/yolo_mindspore/dataset/mask/labels/train/04720.txt b/yolo_mindspore/dataset/mask/labels/train/04720.txt new file mode 100644 index 0000000..4a00ab0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04720.txt @@ -0,0 +1 @@ +1 0.50439453125 0.292 0.5771484375 0.448 diff --git a/yolo_mindspore/dataset/mask/labels/train/04730.txt b/yolo_mindspore/dataset/mask/labels/train/04730.txt new file mode 100644 index 0000000..afb991c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04730.txt @@ -0,0 +1 @@ +1 0.58642578125 0.19057377049180327 0.2841796875 0.23946135831381732 diff --git a/yolo_mindspore/dataset/mask/labels/train/04740.txt b/yolo_mindspore/dataset/mask/labels/train/04740.txt new file mode 100644 index 0000000..53a0252 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04740.txt @@ -0,0 +1,2 @@ +1 0.126 0.42666666666666664 0.18 0.304 +1 0.712 0.3733333333333333 0.20800000000000002 0.3466666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/04750.txt b/yolo_mindspore/dataset/mask/labels/train/04750.txt new file mode 100644 index 0000000..b5f8f53 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04750.txt @@ -0,0 +1 @@ +1 0.4890625 0.4302083333333333 0.24375000000000002 0.3854166666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/04760.txt b/yolo_mindspore/dataset/mask/labels/train/04760.txt new file mode 100644 index 0000000..291de94 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04760.txt @@ -0,0 +1 @@ +1 0.54609375 0.4145833333333333 0.18906250000000002 0.275 diff --git a/yolo_mindspore/dataset/mask/labels/train/04770.txt b/yolo_mindspore/dataset/mask/labels/train/04770.txt new file mode 100644 index 0000000..cd8c47a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04770.txt @@ -0,0 +1 @@ +1 0.38134765625 0.28255675029868577 0.2216796875 0.3548387096774193 diff --git a/yolo_mindspore/dataset/mask/labels/train/04780.txt b/yolo_mindspore/dataset/mask/labels/train/04780.txt new file mode 100644 index 0000000..0a27611 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04780.txt @@ -0,0 +1,2 @@ +1 0.65673828125 0.3487951807228916 0.2705078125 0.42530120481927713 +1 0.22119140625 0.27831325301204823 0.2373046875 0.3662650602409639 diff --git a/yolo_mindspore/dataset/mask/labels/train/04790.txt b/yolo_mindspore/dataset/mask/labels/train/04790.txt new file mode 100644 index 0000000..81689c5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04790.txt @@ -0,0 +1 @@ +1 0.4951171875 0.3305439330543933 0.60546875 0.5578800557880056 diff --git a/yolo_mindspore/dataset/mask/labels/train/04800.txt b/yolo_mindspore/dataset/mask/labels/train/04800.txt new file mode 100644 index 0000000..5398c82 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04800.txt @@ -0,0 +1 @@ +1 0.53828125 0.48125 0.2859375 0.4125 diff --git a/yolo_mindspore/dataset/mask/labels/train/04810.txt b/yolo_mindspore/dataset/mask/labels/train/04810.txt new file mode 100644 index 0000000..6fff7f1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04810.txt @@ -0,0 +1 @@ +1 0.48681640625 0.470203488372093 0.6943359375 0.9171511627906976 diff --git a/yolo_mindspore/dataset/mask/labels/train/04820.txt b/yolo_mindspore/dataset/mask/labels/train/04820.txt new file mode 100644 index 0000000..8c4a719 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04820.txt @@ -0,0 +1,2 @@ +1 0.243 0.364 0.266 0.44 +1 0.863 0.3373333333333333 0.23800000000000002 0.408 diff --git a/yolo_mindspore/dataset/mask/labels/train/04830.txt b/yolo_mindspore/dataset/mask/labels/train/04830.txt new file mode 100644 index 0000000..8907ebd --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04830.txt @@ -0,0 +1 @@ +1 0.4482421875 0.2092267706302794 0.392578125 0.33398310591293046 diff --git a/yolo_mindspore/dataset/mask/labels/train/04840.txt b/yolo_mindspore/dataset/mask/labels/train/04840.txt new file mode 100644 index 0000000..68bd88c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04840.txt @@ -0,0 +1 @@ +1 0.4609375 0.3677083333333333 0.284375 0.46041666666666664 diff --git a/yolo_mindspore/dataset/mask/labels/train/04850.txt b/yolo_mindspore/dataset/mask/labels/train/04850.txt new file mode 100644 index 0000000..7f7a7e9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04850.txt @@ -0,0 +1 @@ +1 0.53076171875 0.3577732518669382 0.5498046875 0.49015614392396467 diff --git a/yolo_mindspore/dataset/mask/labels/train/04860.txt b/yolo_mindspore/dataset/mask/labels/train/04860.txt new file mode 100644 index 0000000..bc53f29 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04860.txt @@ -0,0 +1 @@ +1 0.57421875 0.20219966159052452 0.31640625 0.32148900169204736 diff --git a/yolo_mindspore/dataset/mask/labels/train/04870.txt b/yolo_mindspore/dataset/mask/labels/train/04870.txt new file mode 100644 index 0000000..bfea1cf --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04870.txt @@ -0,0 +1,5 @@ +1 0.10302734375 0.1044776119402985 0.0927734375 0.14626865671641792 +1 0.30029296875 0.10298507462686567 0.0673828125 0.1373134328358209 +1 0.44775390625 0.10671641791044777 0.0751953125 0.14477611940298507 +1 0.67138671875 0.12462686567164179 0.0791015625 0.15074626865671642 +1 0.89404296875 0.08432835820895522 0.0791015625 0.14477611940298507 diff --git a/yolo_mindspore/dataset/mask/labels/train/04880.txt b/yolo_mindspore/dataset/mask/labels/train/04880.txt new file mode 100644 index 0000000..517c6fe --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04880.txt @@ -0,0 +1 @@ +1 0.724609375 0.24853372434017595 0.166015625 0.24780058651026393 diff --git a/yolo_mindspore/dataset/mask/labels/train/04890.txt b/yolo_mindspore/dataset/mask/labels/train/04890.txt new file mode 100644 index 0000000..ce5c1f2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04890.txt @@ -0,0 +1 @@ +1 0.41845703125 0.08903712296983758 0.1982421875 0.15371229698375868 diff --git a/yolo_mindspore/dataset/mask/labels/train/04900.txt b/yolo_mindspore/dataset/mask/labels/train/04900.txt new file mode 100644 index 0000000..9dffe9e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04900.txt @@ -0,0 +1 @@ +1 0.5609375 0.37083333333333335 0.140625 0.21666666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/04910.txt b/yolo_mindspore/dataset/mask/labels/train/04910.txt new file mode 100644 index 0000000..0ca4ffc --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04910.txt @@ -0,0 +1 @@ +1 0.596875 0.4708333333333333 0.24375000000000002 0.35 diff --git a/yolo_mindspore/dataset/mask/labels/train/04920.txt b/yolo_mindspore/dataset/mask/labels/train/04920.txt new file mode 100644 index 0000000..90cfbd9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04920.txt @@ -0,0 +1 @@ +1 0.565625 0.4114583333333333 0.16875 0.26875 diff --git a/yolo_mindspore/dataset/mask/labels/train/04930.txt b/yolo_mindspore/dataset/mask/labels/train/04930.txt new file mode 100644 index 0000000..d078242 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04930.txt @@ -0,0 +1 @@ +1 0.5750000000000001 0.31979166666666664 0.234375 0.3020833333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/04940.txt b/yolo_mindspore/dataset/mask/labels/train/04940.txt new file mode 100644 index 0000000..f4ea011 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04940.txt @@ -0,0 +1 @@ +1 0.47705078125 0.18591934381408068 0.2958984375 0.2460697197539303 diff --git a/yolo_mindspore/dataset/mask/labels/train/04960.txt b/yolo_mindspore/dataset/mask/labels/train/04960.txt new file mode 100644 index 0000000..edbb23d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04960.txt @@ -0,0 +1,5 @@ +1 0.2587890625 0.13715277777777776 0.099609375 0.2534722222222222 +1 0.34375 0.2690972222222222 0.076171875 0.20138888888888887 +1 0.53173828125 0.2803819444444444 0.0732421875 0.203125 +1 0.67333984375 0.19791666666666666 0.0947265625 0.2361111111111111 +1 0.796875 0.203125 0.109375 0.2569444444444444 diff --git a/yolo_mindspore/dataset/mask/labels/train/04970.txt b/yolo_mindspore/dataset/mask/labels/train/04970.txt new file mode 100644 index 0000000..602cb59 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04970.txt @@ -0,0 +1,2 @@ +1 0.296875 0.18740849194729137 0.169921875 0.2664714494875549 +1 0.74169921875 0.3726207906295754 0.1572265625 0.28550512445095166 diff --git a/yolo_mindspore/dataset/mask/labels/train/04980.txt b/yolo_mindspore/dataset/mask/labels/train/04980.txt new file mode 100644 index 0000000..e8a8a5d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04980.txt @@ -0,0 +1 @@ +1 0.383 0.23199999999999998 0.198 0.3253333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/04990.txt b/yolo_mindspore/dataset/mask/labels/train/04990.txt new file mode 100644 index 0000000..d1b2345 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/04990.txt @@ -0,0 +1 @@ +1 0.5203125000000001 0.4666666666666667 0.203125 0.275 diff --git a/yolo_mindspore/dataset/mask/labels/train/05000.txt b/yolo_mindspore/dataset/mask/labels/train/05000.txt new file mode 100644 index 0000000..74d01ca --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05000.txt @@ -0,0 +1,3 @@ +1 0.244140625 0.362339514978602 0.10546875 0.2253922967189729 +1 0.47216796875 0.34807417974322397 0.1298828125 0.2225392296718973 +1 0.6845703125 0.30028530670470754 0.181640625 0.23537803138373753 diff --git a/yolo_mindspore/dataset/mask/labels/train/05010.txt b/yolo_mindspore/dataset/mask/labels/train/05010.txt new file mode 100644 index 0000000..8d1a5f8 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05010.txt @@ -0,0 +1 @@ +1 0.5125000000000001 0.4927083333333333 0.1875 0.3104166666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/05030.txt b/yolo_mindspore/dataset/mask/labels/train/05030.txt new file mode 100644 index 0000000..7f34d1c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05030.txt @@ -0,0 +1 @@ +1 0.42822265625 0.34222972972972976 0.5244140625 0.5047297297297297 diff --git a/yolo_mindspore/dataset/mask/labels/train/05040.txt b/yolo_mindspore/dataset/mask/labels/train/05040.txt new file mode 100644 index 0000000..91e762e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05040.txt @@ -0,0 +1 @@ +1 0.5375 0.4322916666666667 0.1875 0.27291666666666664 diff --git a/yolo_mindspore/dataset/mask/labels/train/05050.txt b/yolo_mindspore/dataset/mask/labels/train/05050.txt new file mode 100644 index 0000000..4b20db1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05050.txt @@ -0,0 +1 @@ +1 0.5146484375 0.14344783715012724 0.236328125 0.20165394402035625 diff --git a/yolo_mindspore/dataset/mask/labels/train/05060.txt b/yolo_mindspore/dataset/mask/labels/train/05060.txt new file mode 100644 index 0000000..6572db1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05060.txt @@ -0,0 +1 @@ +1 0.5625 0.340625 0.209375 0.32708333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/train/05070.txt b/yolo_mindspore/dataset/mask/labels/train/05070.txt new file mode 100644 index 0000000..3cc7545 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05070.txt @@ -0,0 +1,3 @@ +1 0.251953125 0.15428764348413235 0.17578125 0.1424713031735314 +1 0.56201171875 0.2025658338960162 0.1533203125 0.12964213369345037 +1 0.8544921875 0.09047940580688725 0.11328125 0.0837272113436867 diff --git a/yolo_mindspore/dataset/mask/labels/train/05080.txt b/yolo_mindspore/dataset/mask/labels/train/05080.txt new file mode 100644 index 0000000..d181923 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05080.txt @@ -0,0 +1 @@ +1 0.53369140625 0.38888888888888884 0.3076171875 0.652046783625731 diff --git a/yolo_mindspore/dataset/mask/labels/train/05090.txt b/yolo_mindspore/dataset/mask/labels/train/05090.txt new file mode 100644 index 0000000..a5f01f8 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05090.txt @@ -0,0 +1,2 @@ +1 0.302734375 0.16453100973859558 0.20703125 0.11481291645310097 +1 0.54296875 0.09328549461814453 0.1875 0.12403895438236802 diff --git a/yolo_mindspore/dataset/mask/labels/train/05100.txt b/yolo_mindspore/dataset/mask/labels/train/05100.txt new file mode 100644 index 0000000..5a7b19c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05100.txt @@ -0,0 +1 @@ +1 0.52578125 0.5208333333333334 0.2015625 0.3333333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/05110.txt b/yolo_mindspore/dataset/mask/labels/train/05110.txt new file mode 100644 index 0000000..dccef92 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05110.txt @@ -0,0 +1 @@ +1 0.5125000000000001 0.421875 0.20625000000000002 0.30625 diff --git a/yolo_mindspore/dataset/mask/labels/train/05130.txt b/yolo_mindspore/dataset/mask/labels/train/05130.txt new file mode 100644 index 0000000..d2ca967 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05130.txt @@ -0,0 +1 @@ +1 0.41718750000000004 0.34479166666666666 0.23750000000000002 0.33125 diff --git a/yolo_mindspore/dataset/mask/labels/train/05140.txt b/yolo_mindspore/dataset/mask/labels/train/05140.txt new file mode 100644 index 0000000..af5f2fa --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05140.txt @@ -0,0 +1 @@ +1 0.453125 0.33210208193418406 0.548828125 0.4667562122229685 diff --git a/yolo_mindspore/dataset/mask/labels/train/05150.txt b/yolo_mindspore/dataset/mask/labels/train/05150.txt new file mode 100644 index 0000000..956bb14 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05150.txt @@ -0,0 +1 @@ +1 0.52734375 0.4125 0.1484375 0.25416666666666665 diff --git a/yolo_mindspore/dataset/mask/labels/train/05160.txt b/yolo_mindspore/dataset/mask/labels/train/05160.txt new file mode 100644 index 0000000..9f8aeff --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05160.txt @@ -0,0 +1 @@ +1 0.49267578125 0.36503267973856207 0.4169921875 0.365359477124183 diff --git a/yolo_mindspore/dataset/mask/labels/train/05190.txt b/yolo_mindspore/dataset/mask/labels/train/05190.txt new file mode 100644 index 0000000..f370ab9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05190.txt @@ -0,0 +1 @@ +1 0.3408203125 0.38095238095238093 0.34765625 0.550595238095238 diff --git a/yolo_mindspore/dataset/mask/labels/train/05200.txt b/yolo_mindspore/dataset/mask/labels/train/05200.txt new file mode 100644 index 0000000..83eb58b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05200.txt @@ -0,0 +1 @@ +1 0.6585937500000001 0.42083333333333334 0.1921875 0.2791666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/05210.txt b/yolo_mindspore/dataset/mask/labels/train/05210.txt new file mode 100644 index 0000000..5aa3cc6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05210.txt @@ -0,0 +1 @@ +1 0.5087890625 0.2787878787878788 0.42578125 0.39057239057239057 diff --git a/yolo_mindspore/dataset/mask/labels/train/05220.txt b/yolo_mindspore/dataset/mask/labels/train/05220.txt new file mode 100644 index 0000000..d4761f2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05220.txt @@ -0,0 +1 @@ +1 0.513671875 0.30116959064327486 0.4921875 0.4567901234567901 diff --git a/yolo_mindspore/dataset/mask/labels/train/05230.txt b/yolo_mindspore/dataset/mask/labels/train/05230.txt new file mode 100644 index 0000000..03c2f58 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05230.txt @@ -0,0 +1,2 @@ +1 0.37060546875 0.11023255813953489 0.1025390625 0.10697674418604652 +1 0.60302734375 0.1316279069767442 0.1337890625 0.14976744186046512 diff --git a/yolo_mindspore/dataset/mask/labels/train/05240.txt b/yolo_mindspore/dataset/mask/labels/train/05240.txt new file mode 100644 index 0000000..a7e2f69 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05240.txt @@ -0,0 +1 @@ +1 0.5554687500000001 0.37395833333333334 0.1640625 0.26458333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/train/05250.txt b/yolo_mindspore/dataset/mask/labels/train/05250.txt new file mode 100644 index 0000000..919a07c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05250.txt @@ -0,0 +1 @@ +1 0.52490234375 0.2087912087912088 0.2314453125 0.24468864468864468 diff --git a/yolo_mindspore/dataset/mask/labels/train/05260.txt b/yolo_mindspore/dataset/mask/labels/train/05260.txt new file mode 100644 index 0000000..a2b17aa --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05260.txt @@ -0,0 +1 @@ +1 0.5085937500000001 0.4083333333333333 0.2265625 0.3625 diff --git a/yolo_mindspore/dataset/mask/labels/train/05270.txt b/yolo_mindspore/dataset/mask/labels/train/05270.txt new file mode 100644 index 0000000..e912478 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05270.txt @@ -0,0 +1,2 @@ +1 0.2626953125 0.42178594046865103 0.265625 0.18492716909436352 +1 0.62890625 0.22197593413552882 0.3125 0.2045598480050665 diff --git a/yolo_mindspore/dataset/mask/labels/train/05280.txt b/yolo_mindspore/dataset/mask/labels/train/05280.txt new file mode 100644 index 0000000..f5dffca --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05280.txt @@ -0,0 +1,3 @@ +1 0.162109375 0.22082228116710875 0.140625 0.21883289124668434 +1 0.40869140625 0.3521220159151193 0.1318359375 0.20557029177718833 +1 0.72802734375 0.13660477453580902 0.1513671875 0.24137931034482757 diff --git a/yolo_mindspore/dataset/mask/labels/train/05290.txt b/yolo_mindspore/dataset/mask/labels/train/05290.txt new file mode 100644 index 0000000..cbc89b2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05290.txt @@ -0,0 +1 @@ +1 0.439453125 0.2530463038180341 0.328125 0.3160032493907392 diff --git a/yolo_mindspore/dataset/mask/labels/train/05300.txt b/yolo_mindspore/dataset/mask/labels/train/05300.txt new file mode 100644 index 0000000..20fdf67 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05300.txt @@ -0,0 +1 @@ +1 0.6005859375 0.41727672035139096 0.33984375 0.6617862371888726 diff --git a/yolo_mindspore/dataset/mask/labels/train/05310.txt b/yolo_mindspore/dataset/mask/labels/train/05310.txt new file mode 100644 index 0000000..f962c89 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05310.txt @@ -0,0 +1 @@ +1 0.61640625 0.4635416666666667 0.1921875 0.31875 diff --git a/yolo_mindspore/dataset/mask/labels/train/05320.txt b/yolo_mindspore/dataset/mask/labels/train/05320.txt new file mode 100644 index 0000000..91da03d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05320.txt @@ -0,0 +1 @@ +1 0.5234375 0.38645833333333335 0.171875 0.2520833333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/05330.txt b/yolo_mindspore/dataset/mask/labels/train/05330.txt new file mode 100644 index 0000000..58b3a39 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05330.txt @@ -0,0 +1,3 @@ +1 0.14013671875 0.1856763925729443 0.1494140625 0.2679045092838196 +1 0.6513671875 0.15649867374005305 0.119140625 0.1909814323607427 +1 0.83251953125 0.22745358090185674 0.1416015625 0.24005305039787797 diff --git a/yolo_mindspore/dataset/mask/labels/train/05340.txt b/yolo_mindspore/dataset/mask/labels/train/05340.txt new file mode 100644 index 0000000..5b63202 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05340.txt @@ -0,0 +1 @@ +1 0.5029296875 0.3155339805825243 0.658203125 0.5145631067961165 diff --git a/yolo_mindspore/dataset/mask/labels/train/05350.txt b/yolo_mindspore/dataset/mask/labels/train/05350.txt new file mode 100644 index 0000000..28ca8d9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05350.txt @@ -0,0 +1,4 @@ +1 0.34800000000000003 0.5493333333333333 0.14 0.21866666666666665 +1 0.455 0.5426666666666666 0.08600000000000001 0.17866666666666667 +1 0.5630000000000001 0.5266666666666666 0.08600000000000001 0.18933333333333333 +1 0.624 0.4066666666666667 0.116 0.19466666666666665 diff --git a/yolo_mindspore/dataset/mask/labels/train/05360.txt b/yolo_mindspore/dataset/mask/labels/train/05360.txt new file mode 100644 index 0000000..a595999 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05360.txt @@ -0,0 +1 @@ +1 0.58125 0.3302083333333333 0.1875 0.29375 diff --git a/yolo_mindspore/dataset/mask/labels/train/05370.txt b/yolo_mindspore/dataset/mask/labels/train/05370.txt new file mode 100644 index 0000000..ad56f5d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05370.txt @@ -0,0 +1,4 @@ +1 0.1943359375 0.20081967213114754 0.1953125 0.30327868852459017 +1 0.40869140625 0.40505464480874315 0.2197265625 0.48770491803278687 +1 0.609375 0.4692622950819672 0.193359375 0.5286885245901639 +1 0.8291015625 0.34972677595628415 0.251953125 0.5491803278688525 diff --git a/yolo_mindspore/dataset/mask/labels/train/05380.txt b/yolo_mindspore/dataset/mask/labels/train/05380.txt new file mode 100644 index 0000000..5a89cf8 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05380.txt @@ -0,0 +1 @@ +1 0.5439453125 0.40150943396226413 0.69140625 0.7079245283018868 diff --git a/yolo_mindspore/dataset/mask/labels/train/05390.txt b/yolo_mindspore/dataset/mask/labels/train/05390.txt new file mode 100644 index 0000000..1e1caa9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05390.txt @@ -0,0 +1 @@ +1 0.50830078125 0.36181640625 0.5810546875 0.6240234375 diff --git a/yolo_mindspore/dataset/mask/labels/train/05400.txt b/yolo_mindspore/dataset/mask/labels/train/05400.txt new file mode 100644 index 0000000..27a86c8 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05400.txt @@ -0,0 +1,2 @@ +1 0.2626953125 0.14454277286135692 0.1640625 0.28023598820059 +1 0.66943359375 0.2411504424778761 0.1357421875 0.23156342182890854 diff --git a/yolo_mindspore/dataset/mask/labels/train/05410.txt b/yolo_mindspore/dataset/mask/labels/train/05410.txt new file mode 100644 index 0000000..1a6da95 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05410.txt @@ -0,0 +1 @@ +1 0.73583984375 0.23291015625 0.1357421875 0.1416015625 diff --git a/yolo_mindspore/dataset/mask/labels/train/05420.txt b/yolo_mindspore/dataset/mask/labels/train/05420.txt new file mode 100644 index 0000000..ef74928 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05420.txt @@ -0,0 +1,5 @@ +1 0.23500000000000001 0.281524926686217 0.094 0.187683284457478 +1 0.385 0.32991202346041054 0.094 0.17302052785923755 +1 0.516 0.30791788856304986 0.1 0.187683284457478 +1 0.644 0.22140762463343108 0.112 0.19648093841642228 +1 0.752 0.17302052785923755 0.10400000000000001 0.21114369501466276 diff --git a/yolo_mindspore/dataset/mask/labels/train/05430.txt b/yolo_mindspore/dataset/mask/labels/train/05430.txt new file mode 100644 index 0000000..cbb5871 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05430.txt @@ -0,0 +1 @@ +1 0.5234375 0.5010416666666666 0.21250000000000002 0.34375 diff --git a/yolo_mindspore/dataset/mask/labels/train/05440.txt b/yolo_mindspore/dataset/mask/labels/train/05440.txt new file mode 100644 index 0000000..22ad6b1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05440.txt @@ -0,0 +1 @@ +1 0.5554687500000001 0.421875 0.1953125 0.26875 diff --git a/yolo_mindspore/dataset/mask/labels/train/05450.txt b/yolo_mindspore/dataset/mask/labels/train/05450.txt new file mode 100644 index 0000000..5c33ae9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05450.txt @@ -0,0 +1 @@ +1 0.6234375000000001 0.21666666666666667 0.19062500000000002 0.30833333333333335 diff --git a/yolo_mindspore/dataset/mask/labels/train/05460.txt b/yolo_mindspore/dataset/mask/labels/train/05460.txt new file mode 100644 index 0000000..251a1c6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05460.txt @@ -0,0 +1 @@ +1 0.46015625000000004 0.3927083333333333 0.2265625 0.3020833333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/05480.txt b/yolo_mindspore/dataset/mask/labels/train/05480.txt new file mode 100644 index 0000000..c87fa2b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05480.txt @@ -0,0 +1 @@ +1 0.5380859375 0.23046875 0.3125 0.22916666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/05490.txt b/yolo_mindspore/dataset/mask/labels/train/05490.txt new file mode 100644 index 0000000..ca69e52 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05490.txt @@ -0,0 +1 @@ +1 0.5453125 0.37083333333333335 0.1875 0.2708333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/05500.txt b/yolo_mindspore/dataset/mask/labels/train/05500.txt new file mode 100644 index 0000000..622d19b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05500.txt @@ -0,0 +1 @@ +1 0.5185546875 0.3033405172413793 0.708984375 0.47844827586206895 diff --git a/yolo_mindspore/dataset/mask/labels/train/05510.txt b/yolo_mindspore/dataset/mask/labels/train/05510.txt new file mode 100644 index 0000000..b023fb4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05510.txt @@ -0,0 +1,2 @@ +1 0.24951171875 0.09556962025316455 0.0986328125 0.14303797468354432 +1 0.74072265625 0.2569620253164557 0.2763671875 0.4 diff --git a/yolo_mindspore/dataset/mask/labels/train/05520.txt b/yolo_mindspore/dataset/mask/labels/train/05520.txt new file mode 100644 index 0000000..4f4f295 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05520.txt @@ -0,0 +1 @@ +1 0.462890625 0.3911516853932584 0.525390625 0.5323033707865168 diff --git a/yolo_mindspore/dataset/mask/labels/train/05530.txt b/yolo_mindspore/dataset/mask/labels/train/05530.txt new file mode 100644 index 0000000..dd8c3b0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05530.txt @@ -0,0 +1 @@ +1 0.4859375 0.33229166666666665 0.1875 0.29791666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/05540.txt b/yolo_mindspore/dataset/mask/labels/train/05540.txt new file mode 100644 index 0000000..f34a793 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05540.txt @@ -0,0 +1 @@ +1 0.56640625 0.3489583333333333 0.2234375 0.32708333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/train/05550.txt b/yolo_mindspore/dataset/mask/labels/train/05550.txt new file mode 100644 index 0000000..c604619 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05550.txt @@ -0,0 +1 @@ +1 0.56689453125 0.165860400829302 0.3388671875 0.2736696613683483 diff --git a/yolo_mindspore/dataset/mask/labels/train/05560.txt b/yolo_mindspore/dataset/mask/labels/train/05560.txt new file mode 100644 index 0000000..00cecbd --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05560.txt @@ -0,0 +1 @@ +1 0.6125 0.3885416666666667 0.15937500000000002 0.2520833333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/05570.txt b/yolo_mindspore/dataset/mask/labels/train/05570.txt new file mode 100644 index 0000000..7ceac10 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05570.txt @@ -0,0 +1 @@ +1 0.52890625 0.38125 0.2109375 0.325 diff --git a/yolo_mindspore/dataset/mask/labels/train/05590.txt b/yolo_mindspore/dataset/mask/labels/train/05590.txt new file mode 100644 index 0000000..f13d28b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05590.txt @@ -0,0 +1 @@ +1 0.4990234375 0.3113465481886535 0.541015625 0.5051264524948735 diff --git a/yolo_mindspore/dataset/mask/labels/train/05600.txt b/yolo_mindspore/dataset/mask/labels/train/05600.txt new file mode 100644 index 0000000..ac319f5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05600.txt @@ -0,0 +1,2 @@ +1 0.359375 0.4416666666666667 0.12708333333333333 0.312962962962963 +1 0.6833333333333333 0.36203703703703705 0.18125 0.38703703703703707 diff --git a/yolo_mindspore/dataset/mask/labels/train/05610.txt b/yolo_mindspore/dataset/mask/labels/train/05610.txt new file mode 100644 index 0000000..7417f7f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05610.txt @@ -0,0 +1 @@ +1 0.55 0.3645833333333333 0.19375 0.2875 diff --git a/yolo_mindspore/dataset/mask/labels/train/05620.txt b/yolo_mindspore/dataset/mask/labels/train/05620.txt new file mode 100644 index 0000000..cfd6c6c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05620.txt @@ -0,0 +1 @@ +1 0.498046875 0.3442265795206972 0.392578125 0.38344226579520696 diff --git a/yolo_mindspore/dataset/mask/labels/train/05630.txt b/yolo_mindspore/dataset/mask/labels/train/05630.txt new file mode 100644 index 0000000..b4c3078 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05630.txt @@ -0,0 +1 @@ +1 0.585 0.216 0.074 0.12266666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/05640.txt b/yolo_mindspore/dataset/mask/labels/train/05640.txt new file mode 100644 index 0000000..2c03758 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05640.txt @@ -0,0 +1,2 @@ +1 0.43798828125 0.1554185593770279 0.1767578125 0.1563919532770928 +1 0.6015625 0.12199870214146658 0.1640625 0.15833874107722257 diff --git a/yolo_mindspore/dataset/mask/labels/train/05650.txt b/yolo_mindspore/dataset/mask/labels/train/05650.txt new file mode 100644 index 0000000..2a53fac --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05650.txt @@ -0,0 +1 @@ +1 0.45068359375 0.3552927927927928 0.3037109375 0.4380630630630631 diff --git a/yolo_mindspore/dataset/mask/labels/train/05660.txt b/yolo_mindspore/dataset/mask/labels/train/05660.txt new file mode 100644 index 0000000..76a0b2b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05660.txt @@ -0,0 +1 @@ +1 0.48828125 0.09528552456839309 0.1640625 0.1347941567065073 diff --git a/yolo_mindspore/dataset/mask/labels/train/05670.txt b/yolo_mindspore/dataset/mask/labels/train/05670.txt new file mode 100644 index 0000000..dd744f3 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05670.txt @@ -0,0 +1 @@ +1 0.50830078125 0.22403982930298721 0.3173828125 0.30725462304409673 diff --git a/yolo_mindspore/dataset/mask/labels/train/05680.txt b/yolo_mindspore/dataset/mask/labels/train/05680.txt new file mode 100644 index 0000000..db2d9cf --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05680.txt @@ -0,0 +1 @@ +1 0.5673828125 0.21141185076810534 0.265625 0.24140453547915144 diff --git a/yolo_mindspore/dataset/mask/labels/train/05690.txt b/yolo_mindspore/dataset/mask/labels/train/05690.txt new file mode 100644 index 0000000..41d5e4f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05690.txt @@ -0,0 +1 @@ +1 0.46875 0.46458333333333335 0.225 0.3458333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/05700.txt b/yolo_mindspore/dataset/mask/labels/train/05700.txt new file mode 100644 index 0000000..59a109b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05700.txt @@ -0,0 +1 @@ +1 0.6261261261261262 0.17200000000000001 0.24324324324324323 0.18 diff --git a/yolo_mindspore/dataset/mask/labels/train/05710.txt b/yolo_mindspore/dataset/mask/labels/train/05710.txt new file mode 100644 index 0000000..fd664ba --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05710.txt @@ -0,0 +1 @@ +1 0.5140625 0.3385416666666667 0.16875 0.23958333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/train/05720.txt b/yolo_mindspore/dataset/mask/labels/train/05720.txt new file mode 100644 index 0000000..6c3f186 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05720.txt @@ -0,0 +1 @@ +1 0.6062500000000001 0.4739583333333333 0.2 0.3104166666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/05730.txt b/yolo_mindspore/dataset/mask/labels/train/05730.txt new file mode 100644 index 0000000..0b1ff52 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05730.txt @@ -0,0 +1 @@ +1 0.41015625 0.37632978723404253 0.484375 0.5895390070921985 diff --git a/yolo_mindspore/dataset/mask/labels/train/05740.txt b/yolo_mindspore/dataset/mask/labels/train/05740.txt new file mode 100644 index 0000000..0c3f2bd --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05740.txt @@ -0,0 +1 @@ +1 0.49267578125 0.2848984771573604 0.4990234375 0.4175126903553299 diff --git a/yolo_mindspore/dataset/mask/labels/train/05750.txt b/yolo_mindspore/dataset/mask/labels/train/05750.txt new file mode 100644 index 0000000..7ae2703 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05750.txt @@ -0,0 +1 @@ +1 0.43310546875 0.4554036458333333 0.7314453125 0.669921875 diff --git a/yolo_mindspore/dataset/mask/labels/train/05760.txt b/yolo_mindspore/dataset/mask/labels/train/05760.txt new file mode 100644 index 0000000..88a6b4e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05760.txt @@ -0,0 +1 @@ +1 0.48974609375 0.34372652141247184 0.4892578125 0.4380165289256199 diff --git a/yolo_mindspore/dataset/mask/labels/train/05770.txt b/yolo_mindspore/dataset/mask/labels/train/05770.txt new file mode 100644 index 0000000..0e58b27 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05770.txt @@ -0,0 +1 @@ +1 0.36083984375 0.1631892697466468 0.1240234375 0.2399403874813711 diff --git a/yolo_mindspore/dataset/mask/labels/train/05780.txt b/yolo_mindspore/dataset/mask/labels/train/05780.txt new file mode 100644 index 0000000..780d4d8 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05780.txt @@ -0,0 +1 @@ +1 0.5007812500000001 0.5239583333333333 0.2265625 0.31875 diff --git a/yolo_mindspore/dataset/mask/labels/train/05790.txt b/yolo_mindspore/dataset/mask/labels/train/05790.txt new file mode 100644 index 0000000..1f0fcac --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05790.txt @@ -0,0 +1 @@ +1 0.46044921875 0.2324128862590401 0.5302734375 0.4635108481262328 diff --git a/yolo_mindspore/dataset/mask/labels/train/05800.txt b/yolo_mindspore/dataset/mask/labels/train/05800.txt new file mode 100644 index 0000000..e165fe8 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05800.txt @@ -0,0 +1 @@ +1 0.53369140625 0.11749633967789166 0.2060546875 0.20571010248901905 diff --git a/yolo_mindspore/dataset/mask/labels/train/05810.txt b/yolo_mindspore/dataset/mask/labels/train/05810.txt new file mode 100644 index 0000000..d384dd3 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05810.txt @@ -0,0 +1 @@ +1 0.54296875 0.4041666666666667 0.1953125 0.3541666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/05820.txt b/yolo_mindspore/dataset/mask/labels/train/05820.txt new file mode 100644 index 0000000..2ad1234 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05820.txt @@ -0,0 +1 @@ +1 0.6234375000000001 0.428125 0.21875 0.30625 diff --git a/yolo_mindspore/dataset/mask/labels/train/05830.txt b/yolo_mindspore/dataset/mask/labels/train/05830.txt new file mode 100644 index 0000000..873f6f0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05830.txt @@ -0,0 +1,2 @@ +1 0.18359375 0.1611328125 0.30859375 0.3046875 +1 0.8427734375 0.2021484375 0.314453125 0.36328125 diff --git a/yolo_mindspore/dataset/mask/labels/train/05840.txt b/yolo_mindspore/dataset/mask/labels/train/05840.txt new file mode 100644 index 0000000..0857839 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05840.txt @@ -0,0 +1 @@ +1 0.52578125 0.38229166666666664 0.1609375 0.22708333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/05860.txt b/yolo_mindspore/dataset/mask/labels/train/05860.txt new file mode 100644 index 0000000..72e82a8 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05860.txt @@ -0,0 +1 @@ +1 0.505859375 0.34421460892049127 0.46875 0.38073691014867483 diff --git a/yolo_mindspore/dataset/mask/labels/train/05890.txt b/yolo_mindspore/dataset/mask/labels/train/05890.txt new file mode 100644 index 0000000..6d1f431 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05890.txt @@ -0,0 +1 @@ +1 0.540625 0.3833333333333333 0.19375 0.2833333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/05900.txt b/yolo_mindspore/dataset/mask/labels/train/05900.txt new file mode 100644 index 0000000..ed74c99 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05900.txt @@ -0,0 +1 @@ +1 0.54921875 0.428125 0.2078125 0.31875 diff --git a/yolo_mindspore/dataset/mask/labels/train/05910.txt b/yolo_mindspore/dataset/mask/labels/train/05910.txt new file mode 100644 index 0000000..40bc758 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05910.txt @@ -0,0 +1 @@ +1 0.53125 0.30045572916666663 0.595703125 0.482421875 diff --git a/yolo_mindspore/dataset/mask/labels/train/05920.txt b/yolo_mindspore/dataset/mask/labels/train/05920.txt new file mode 100644 index 0000000..6fb9457 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05920.txt @@ -0,0 +1 @@ +1 0.4921875 0.3772391991570074 0.458984375 0.613277133825079 diff --git a/yolo_mindspore/dataset/mask/labels/train/05930.txt b/yolo_mindspore/dataset/mask/labels/train/05930.txt new file mode 100644 index 0000000..45d1d12 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05930.txt @@ -0,0 +1 @@ +1 0.55078125 0.4041666666666667 0.22968750000000002 0.30416666666666664 diff --git a/yolo_mindspore/dataset/mask/labels/train/05940.txt b/yolo_mindspore/dataset/mask/labels/train/05940.txt new file mode 100644 index 0000000..01f089c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05940.txt @@ -0,0 +1 @@ +1 0.47998046875 0.28626220362622035 0.5166015625 0.4442119944211994 diff --git a/yolo_mindspore/dataset/mask/labels/train/05950.txt b/yolo_mindspore/dataset/mask/labels/train/05950.txt new file mode 100644 index 0000000..fb93f70 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05950.txt @@ -0,0 +1 @@ +1 0.553125 0.47812499999999997 0.215625 0.3104166666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/05960.txt b/yolo_mindspore/dataset/mask/labels/train/05960.txt new file mode 100644 index 0000000..df69c0e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05960.txt @@ -0,0 +1,2 @@ +1 0.3067708333333333 0.40185185185185185 0.19479166666666667 0.4518518518518519 +1 0.73125 0.2916666666666667 0.24166666666666667 0.5092592592592593 diff --git a/yolo_mindspore/dataset/mask/labels/train/05970.txt b/yolo_mindspore/dataset/mask/labels/train/05970.txt new file mode 100644 index 0000000..81c1e2b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05970.txt @@ -0,0 +1,3 @@ +1 0.515 0.2813333333333333 0.082 0.14666666666666667 +1 0.603 0.21466666666666667 0.082 0.12 +1 0.719 0.09333333333333332 0.094 0.16533333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/05980.txt b/yolo_mindspore/dataset/mask/labels/train/05980.txt new file mode 100644 index 0000000..d501611 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05980.txt @@ -0,0 +1 @@ +1 0.513671875 0.3125 0.376953125 0.328125 diff --git a/yolo_mindspore/dataset/mask/labels/train/05990.txt b/yolo_mindspore/dataset/mask/labels/train/05990.txt new file mode 100644 index 0000000..d84493a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/05990.txt @@ -0,0 +1 @@ +1 0.56640625 0.4114583333333333 0.1765625 0.28125 diff --git a/yolo_mindspore/dataset/mask/labels/train/06010.txt b/yolo_mindspore/dataset/mask/labels/train/06010.txt new file mode 100644 index 0000000..6bdfe40 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06010.txt @@ -0,0 +1 @@ +1 0.5593750000000001 0.5239583333333333 0.1625 0.24375 diff --git a/yolo_mindspore/dataset/mask/labels/train/06020.txt b/yolo_mindspore/dataset/mask/labels/train/06020.txt new file mode 100644 index 0000000..ccd7ff3 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06020.txt @@ -0,0 +1 @@ +1 0.73779296875 0.36339522546419095 0.2314453125 0.3793103448275862 diff --git a/yolo_mindspore/dataset/mask/labels/train/06030.txt b/yolo_mindspore/dataset/mask/labels/train/06030.txt new file mode 100644 index 0000000..be093e3 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06030.txt @@ -0,0 +1,2 @@ +1 0.50830078125 0.2524578651685393 0.3095703125 0.2928370786516854 +1 0.10595703125 0.300561797752809 0.2060546875 0.1797752808988764 diff --git a/yolo_mindspore/dataset/mask/labels/train/06040.txt b/yolo_mindspore/dataset/mask/labels/train/06040.txt new file mode 100644 index 0000000..c76f7d2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06040.txt @@ -0,0 +1 @@ +1 0.34130859375 0.34782608695652173 0.2236328125 0.46176911544227883 diff --git a/yolo_mindspore/dataset/mask/labels/train/06050.txt b/yolo_mindspore/dataset/mask/labels/train/06050.txt new file mode 100644 index 0000000..e159ebe --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06050.txt @@ -0,0 +1 @@ +1 0.5864022662889519 0.242 0.4645892351274788 0.392 diff --git a/yolo_mindspore/dataset/mask/labels/train/06060.txt b/yolo_mindspore/dataset/mask/labels/train/06060.txt new file mode 100644 index 0000000..679fc48 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06060.txt @@ -0,0 +1 @@ +1 0.553125 0.453125 0.15625 0.25625 diff --git a/yolo_mindspore/dataset/mask/labels/train/06070.txt b/yolo_mindspore/dataset/mask/labels/train/06070.txt new file mode 100644 index 0000000..e2b0e1a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06070.txt @@ -0,0 +1 @@ +1 0.342 0.256 0.272 0.384 diff --git a/yolo_mindspore/dataset/mask/labels/train/06080.txt b/yolo_mindspore/dataset/mask/labels/train/06080.txt new file mode 100644 index 0000000..1f1a7be --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06080.txt @@ -0,0 +1 @@ +1 0.6071428571428572 0.162 0.3116883116883117 0.248 diff --git a/yolo_mindspore/dataset/mask/labels/train/06090.txt b/yolo_mindspore/dataset/mask/labels/train/06090.txt new file mode 100644 index 0000000..ebf2206 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06090.txt @@ -0,0 +1 @@ +1 0.455078125 0.2099609375 0.330078125 0.22981770833333331 diff --git a/yolo_mindspore/dataset/mask/labels/train/06100.txt b/yolo_mindspore/dataset/mask/labels/train/06100.txt new file mode 100644 index 0000000..31d6b4f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06100.txt @@ -0,0 +1,4 @@ +1 0.11474609375 0.14588859416445624 0.2060546875 0.2838196286472148 +1 0.4765625 0.3381962864721485 0.142578125 0.20689655172413793 +1 0.66845703125 0.2745358090185676 0.1357421875 0.23342175066312995 +1 0.86376953125 0.1909814323607427 0.1689453125 0.27851458885941643 diff --git a/yolo_mindspore/dataset/mask/labels/train/06110.txt b/yolo_mindspore/dataset/mask/labels/train/06110.txt new file mode 100644 index 0000000..23f8ce5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06110.txt @@ -0,0 +1 @@ +1 0.4927083333333333 0.34074074074074073 0.18333333333333332 0.4444444444444445 diff --git a/yolo_mindspore/dataset/mask/labels/train/06120.txt b/yolo_mindspore/dataset/mask/labels/train/06120.txt new file mode 100644 index 0000000..827eb8e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06120.txt @@ -0,0 +1 @@ +1 0.6062500000000001 0.4041666666666667 0.184375 0.2833333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/06130.txt b/yolo_mindspore/dataset/mask/labels/train/06130.txt new file mode 100644 index 0000000..78fb0c9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06130.txt @@ -0,0 +1 @@ +1 0.52734375 0.37083333333333335 0.2109375 0.35 diff --git a/yolo_mindspore/dataset/mask/labels/train/06140.txt b/yolo_mindspore/dataset/mask/labels/train/06140.txt new file mode 100644 index 0000000..b1ad81c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06140.txt @@ -0,0 +1 @@ +1 0.478515625 0.2880859375 0.447265625 0.3782552083333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/06150.txt b/yolo_mindspore/dataset/mask/labels/train/06150.txt new file mode 100644 index 0000000..522a1a0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06150.txt @@ -0,0 +1 @@ +1 0.373046875 0.24826388888888887 0.21875 0.38888888888888884 diff --git a/yolo_mindspore/dataset/mask/labels/train/06160.txt b/yolo_mindspore/dataset/mask/labels/train/06160.txt new file mode 100644 index 0000000..1e6fa4d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06160.txt @@ -0,0 +1 @@ +1 0.525 0.46458333333333335 0.18125000000000002 0.2375 diff --git a/yolo_mindspore/dataset/mask/labels/train/06170.txt b/yolo_mindspore/dataset/mask/labels/train/06170.txt new file mode 100644 index 0000000..92c3314 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06170.txt @@ -0,0 +1,4 @@ +1 0.1552734375 0.33421750663129973 0.16015625 0.2546419098143236 +1 0.35009765625 0.366710875331565 0.1787109375 0.22413793103448273 +1 0.6826171875 0.5 0.12109375 0.18302387267904507 +1 0.8349609375 0.24734748010610078 0.16796875 0.23209549071618035 diff --git a/yolo_mindspore/dataset/mask/labels/train/06180.txt b/yolo_mindspore/dataset/mask/labels/train/06180.txt new file mode 100644 index 0000000..2e163ac --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06180.txt @@ -0,0 +1 @@ +1 0.512 0.41876750700280113 0.356 0.6302521008403361 diff --git a/yolo_mindspore/dataset/mask/labels/train/06200.txt b/yolo_mindspore/dataset/mask/labels/train/06200.txt new file mode 100644 index 0000000..435912a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06200.txt @@ -0,0 +1 @@ +1 0.246 0.4066666666666667 0.07200000000000001 0.12 diff --git a/yolo_mindspore/dataset/mask/labels/train/06210.txt b/yolo_mindspore/dataset/mask/labels/train/06210.txt new file mode 100644 index 0000000..678d7fd --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06210.txt @@ -0,0 +1,2 @@ +1 0.5 0.306 0.1111111111111111 0.10400000000000001 +1 0.3333333333333333 0.431 0.0960960960960961 0.074 diff --git a/yolo_mindspore/dataset/mask/labels/train/06220.txt b/yolo_mindspore/dataset/mask/labels/train/06220.txt new file mode 100644 index 0000000..2381bb3 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06220.txt @@ -0,0 +1 @@ +1 0.5320312500000001 0.359375 0.1859375 0.28541666666666665 diff --git a/yolo_mindspore/dataset/mask/labels/train/06230.txt b/yolo_mindspore/dataset/mask/labels/train/06230.txt new file mode 100644 index 0000000..f5e9230 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06230.txt @@ -0,0 +1 @@ +1 0.4912109375 0.32459312839059673 0.412109375 0.45750452079566 diff --git a/yolo_mindspore/dataset/mask/labels/train/06250.txt b/yolo_mindspore/dataset/mask/labels/train/06250.txt new file mode 100644 index 0000000..f6088d6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06250.txt @@ -0,0 +1 @@ +1 0.5087890625 0.3588681849551415 0.52734375 0.5410628019323671 diff --git a/yolo_mindspore/dataset/mask/labels/train/06260.txt b/yolo_mindspore/dataset/mask/labels/train/06260.txt new file mode 100644 index 0000000..7905467 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06260.txt @@ -0,0 +1 @@ +1 0.52783203125 0.46354166666666663 0.5380859375 0.8880208333333333 diff --git a/yolo_mindspore/dataset/mask/labels/train/06270.txt b/yolo_mindspore/dataset/mask/labels/train/06270.txt new file mode 100644 index 0000000..b158df6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06270.txt @@ -0,0 +1 @@ +1 0.62 0.5093333333333333 0.328 0.5066666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/06280.txt b/yolo_mindspore/dataset/mask/labels/train/06280.txt new file mode 100644 index 0000000..1408227 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06280.txt @@ -0,0 +1,3 @@ +1 0.19970703125 0.24342105263157893 0.1142578125 0.20614035087719296 +1 0.4150390625 0.34502923976608185 0.13671875 0.2046783625730994 +1 0.8046875 0.293859649122807 0.150390625 0.23391812865497075 diff --git a/yolo_mindspore/dataset/mask/labels/train/06290.txt b/yolo_mindspore/dataset/mask/labels/train/06290.txt new file mode 100644 index 0000000..5255918 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06290.txt @@ -0,0 +1 @@ +1 0.52587890625 0.22787318361955086 0.2255859375 0.32100396301188905 diff --git a/yolo_mindspore/dataset/mask/labels/train/06300.txt b/yolo_mindspore/dataset/mask/labels/train/06300.txt new file mode 100644 index 0000000..2320759 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06300.txt @@ -0,0 +1 @@ +1 0.58544921875 0.33088235294117646 0.2802734375 0.4852941176470588 diff --git a/yolo_mindspore/dataset/mask/labels/train/06310.txt b/yolo_mindspore/dataset/mask/labels/train/06310.txt new file mode 100644 index 0000000..0af704b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06310.txt @@ -0,0 +1 @@ +1 0.525 0.40625 0.21250000000000002 0.3 diff --git a/yolo_mindspore/dataset/mask/labels/train/06320.txt b/yolo_mindspore/dataset/mask/labels/train/06320.txt new file mode 100644 index 0000000..daf1372 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06320.txt @@ -0,0 +1 @@ +1 0.5825825825825826 0.316 0.3663663663663664 0.316 diff --git a/yolo_mindspore/dataset/mask/labels/train/06330.txt b/yolo_mindspore/dataset/mask/labels/train/06330.txt new file mode 100644 index 0000000..b911a8a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06330.txt @@ -0,0 +1 @@ +1 0.388 0.132 0.2906666666666667 0.232 diff --git a/yolo_mindspore/dataset/mask/labels/train/06340.txt b/yolo_mindspore/dataset/mask/labels/train/06340.txt new file mode 100644 index 0000000..32d6d2a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06340.txt @@ -0,0 +1,2 @@ +1 0.397 0.4532085561497326 0.114 0.17379679144385027 +1 0.6910000000000001 0.4304812834224599 0.11800000000000001 0.2032085561497326 diff --git a/yolo_mindspore/dataset/mask/labels/train/06350.txt b/yolo_mindspore/dataset/mask/labels/train/06350.txt new file mode 100644 index 0000000..e1b1242 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06350.txt @@ -0,0 +1 @@ +1 0.49843750000000003 0.43124999999999997 0.2 0.24166666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/06360.txt b/yolo_mindspore/dataset/mask/labels/train/06360.txt new file mode 100644 index 0000000..a4dd15c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06360.txt @@ -0,0 +1,3 @@ +1 0.30908203125 0.2526525198938992 0.1376953125 0.24270557029177717 +1 0.44384765625 0.2606100795755968 0.1259765625 0.2029177718832891 +1 0.7509765625 0.14854111405835543 0.126953125 0.22015915119363394 diff --git a/yolo_mindspore/dataset/mask/labels/train/06370.txt b/yolo_mindspore/dataset/mask/labels/train/06370.txt new file mode 100644 index 0000000..69b58b9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06370.txt @@ -0,0 +1 @@ +1 0.5859375 0.3104166666666667 0.178125 0.26666666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/06380.txt b/yolo_mindspore/dataset/mask/labels/train/06380.txt new file mode 100644 index 0000000..a6129e7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06380.txt @@ -0,0 +1 @@ +1 0.49169921875 0.29942418426103645 0.5986328125 0.46705054382597566 diff --git a/yolo_mindspore/dataset/mask/labels/train/06390.txt b/yolo_mindspore/dataset/mask/labels/train/06390.txt new file mode 100644 index 0000000..57bc40b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06390.txt @@ -0,0 +1 @@ +1 0.5328125 0.40729166666666666 0.209375 0.34791666666666665 diff --git a/yolo_mindspore/dataset/mask/labels/train/06400.txt b/yolo_mindspore/dataset/mask/labels/train/06400.txt new file mode 100644 index 0000000..cb4a36e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06400.txt @@ -0,0 +1 @@ +1 0.5875 0.384375 0.15625 0.23541666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/06410.txt b/yolo_mindspore/dataset/mask/labels/train/06410.txt new file mode 100644 index 0000000..7e341c4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06410.txt @@ -0,0 +1 @@ +1 0.5234375 0.35625 0.20625000000000002 0.31666666666666665 diff --git a/yolo_mindspore/dataset/mask/labels/train/06420.txt b/yolo_mindspore/dataset/mask/labels/train/06420.txt new file mode 100644 index 0000000..ce6c1b1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06420.txt @@ -0,0 +1 @@ +1 0.4765625 0.40625 0.2625 0.4166666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/train/06440.txt b/yolo_mindspore/dataset/mask/labels/train/06440.txt new file mode 100644 index 0000000..2381d3c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06440.txt @@ -0,0 +1 @@ +1 0.49062500000000003 0.4302083333333333 0.215625 0.30625 diff --git a/yolo_mindspore/dataset/mask/labels/train/06450.txt b/yolo_mindspore/dataset/mask/labels/train/06450.txt new file mode 100644 index 0000000..6bd4aee --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06450.txt @@ -0,0 +1 @@ +1 0.23900000000000002 0.17837078651685392 0.23800000000000002 0.3455056179775281 diff --git a/yolo_mindspore/dataset/mask/labels/train/06460.txt b/yolo_mindspore/dataset/mask/labels/train/06460.txt new file mode 100644 index 0000000..9896a61 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06460.txt @@ -0,0 +1 @@ +1 0.565625 0.359375 0.171875 0.26458333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/train/06470.txt b/yolo_mindspore/dataset/mask/labels/train/06470.txt new file mode 100644 index 0000000..47cd253 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06470.txt @@ -0,0 +1 @@ +1 0.57421875 0.276239907727797 0.291015625 0.3771626297577855 diff --git a/yolo_mindspore/dataset/mask/labels/train/06490.txt b/yolo_mindspore/dataset/mask/labels/train/06490.txt new file mode 100644 index 0000000..c49b3af --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06490.txt @@ -0,0 +1,3 @@ +1 0.182 0.44266666666666665 0.12 0.21333333333333332 +1 0.435 0.41333333333333333 0.134 0.20266666666666666 +1 0.789 0.44 0.178 0.26666666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/train/06500.txt b/yolo_mindspore/dataset/mask/labels/train/06500.txt new file mode 100644 index 0000000..f1c579a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/train/06500.txt @@ -0,0 +1 @@ +1 0.46337890625 0.43908629441624364 0.3740234375 0.581218274111675 diff --git a/yolo_mindspore/dataset/mask/labels/val/0000.txt b/yolo_mindspore/dataset/mask/labels/val/0000.txt new file mode 100644 index 0000000..0c81a88 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0000.txt @@ -0,0 +1,2 @@ +30 0.253125 0.458333 0.127083 0.257407 +30 0.736979 0.475926 0.130208 0.166667 diff --git a/yolo_mindspore/dataset/mask/labels/val/00000.txt b/yolo_mindspore/dataset/mask/labels/val/00000.txt new file mode 100644 index 0000000..3dd783c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00000.txt @@ -0,0 +1 @@ +1 0.525 0.340625 0.16875 0.26875 diff --git a/yolo_mindspore/dataset/mask/labels/val/0001.txt b/yolo_mindspore/dataset/mask/labels/val/0001.txt new file mode 100644 index 0000000..d59ed4b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0001.txt @@ -0,0 +1 @@ +30 0.497917 0.462963 0.308333 0.744444 diff --git a/yolo_mindspore/dataset/mask/labels/val/00010.txt b/yolo_mindspore/dataset/mask/labels/val/00010.txt new file mode 100644 index 0000000..7559d42 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00010.txt @@ -0,0 +1,2 @@ +1 0.43994140625 0.1328125 0.1552734375 0.19921875 +1 0.62841796875 0.15234375 0.1337890625 0.1796875 diff --git a/yolo_mindspore/dataset/mask/labels/val/0003.txt b/yolo_mindspore/dataset/mask/labels/val/0003.txt new file mode 100644 index 0000000..9444020 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0003.txt @@ -0,0 +1 @@ +30 0.338542 0.358333 0.170833 0.312963 diff --git a/yolo_mindspore/dataset/mask/labels/val/00030.txt b/yolo_mindspore/dataset/mask/labels/val/00030.txt new file mode 100644 index 0000000..789131c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00030.txt @@ -0,0 +1,2 @@ +1 0.2509765625 0.19873046875 0.16796875 0.2158203125 +1 0.73193359375 0.16650390625 0.1474609375 0.1728515625 diff --git a/yolo_mindspore/dataset/mask/labels/val/0004.txt b/yolo_mindspore/dataset/mask/labels/val/0004.txt new file mode 100644 index 0000000..481e817 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0004.txt @@ -0,0 +1 @@ +30 0.496354 0.284259 0.184375 0.338889 diff --git a/yolo_mindspore/dataset/mask/labels/val/0006.txt b/yolo_mindspore/dataset/mask/labels/val/0006.txt new file mode 100644 index 0000000..b6ed1ff --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0006.txt @@ -0,0 +1,2 @@ +30 0.269792 0.245370 0.145833 0.264815 +30 0.725000 0.431481 0.150000 0.248148 diff --git a/yolo_mindspore/dataset/mask/labels/val/00060.txt b/yolo_mindspore/dataset/mask/labels/val/00060.txt new file mode 100644 index 0000000..63d7698 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00060.txt @@ -0,0 +1 @@ +1 0.5671875000000001 0.43854166666666666 0.134375 0.20208333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/val/0007.txt b/yolo_mindspore/dataset/mask/labels/val/0007.txt new file mode 100644 index 0000000..f28bf04 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0007.txt @@ -0,0 +1,10 @@ +30 0.207292 0.329630 0.045833 0.096296 +30 0.359375 0.294444 0.058333 0.107407 +30 0.486458 0.342593 0.031250 0.137037 +30 0.575000 0.390741 0.039583 0.137037 +30 0.657292 0.391667 0.070833 0.183333 +30 0.844792 0.496296 0.062500 0.122222 +30 0.627083 0.579630 0.043750 0.118519 +30 0.416667 0.540741 0.052083 0.066667 +30 0.263021 0.530556 0.059375 0.098148 +30 0.108854 0.441667 0.105208 0.238889 diff --git a/yolo_mindspore/dataset/mask/labels/val/00070.txt b/yolo_mindspore/dataset/mask/labels/val/00070.txt new file mode 100644 index 0000000..7998f68 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00070.txt @@ -0,0 +1 @@ +1 0.35029940119760483 0.135 0.16167664670658682 0.126 diff --git a/yolo_mindspore/dataset/mask/labels/val/0009.txt b/yolo_mindspore/dataset/mask/labels/val/0009.txt new file mode 100644 index 0000000..8eb7a0e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0009.txt @@ -0,0 +1 @@ +30 0.476042 0.392593 0.083333 0.170370 diff --git a/yolo_mindspore/dataset/mask/labels/val/0010.txt b/yolo_mindspore/dataset/mask/labels/val/0010.txt new file mode 100644 index 0000000..7f03def --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0010.txt @@ -0,0 +1 @@ +30 0.505729 0.350000 0.188542 0.359259 diff --git a/yolo_mindspore/dataset/mask/labels/val/00100.txt b/yolo_mindspore/dataset/mask/labels/val/00100.txt new file mode 100644 index 0000000..7c55a6a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00100.txt @@ -0,0 +1 @@ +1 0.49462890625 0.30006835269993165 0.5498046875 0.42378673957621327 diff --git a/yolo_mindspore/dataset/mask/labels/val/00130.txt b/yolo_mindspore/dataset/mask/labels/val/00130.txt new file mode 100644 index 0000000..932cee4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00130.txt @@ -0,0 +1 @@ +1 0.54345703125 0.3530864197530864 0.3466796875 0.5432098765432098 diff --git a/yolo_mindspore/dataset/mask/labels/val/0015.txt b/yolo_mindspore/dataset/mask/labels/val/0015.txt new file mode 100644 index 0000000..91cb1c1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0015.txt @@ -0,0 +1 @@ +30 0.631771 0.274074 0.134375 0.288889 diff --git a/yolo_mindspore/dataset/mask/labels/val/0016.txt b/yolo_mindspore/dataset/mask/labels/val/0016.txt new file mode 100644 index 0000000..2c42ef2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0016.txt @@ -0,0 +1 @@ +30 0.671875 0.362963 0.235417 0.388889 diff --git a/yolo_mindspore/dataset/mask/labels/val/0017.txt b/yolo_mindspore/dataset/mask/labels/val/0017.txt new file mode 100644 index 0000000..e33614b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0017.txt @@ -0,0 +1 @@ +30 0.325000 0.403704 0.145833 0.307407 diff --git a/yolo_mindspore/dataset/mask/labels/val/0018.txt b/yolo_mindspore/dataset/mask/labels/val/0018.txt new file mode 100644 index 0000000..180c0ca --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0018.txt @@ -0,0 +1,2 @@ +30 0.342708 0.429630 0.125000 0.314815 +30 0.665625 0.500000 0.127083 0.337037 diff --git a/yolo_mindspore/dataset/mask/labels/val/0021.txt b/yolo_mindspore/dataset/mask/labels/val/0021.txt new file mode 100644 index 0000000..51de406 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0021.txt @@ -0,0 +1 @@ +30 0.358854 0.391667 0.232292 0.524074 diff --git a/yolo_mindspore/dataset/mask/labels/val/0023.txt b/yolo_mindspore/dataset/mask/labels/val/0023.txt new file mode 100644 index 0000000..c8bf255 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0023.txt @@ -0,0 +1 @@ +30 0.688021 0.378704 0.359375 0.568519 diff --git a/yolo_mindspore/dataset/mask/labels/val/0025.txt b/yolo_mindspore/dataset/mask/labels/val/0025.txt new file mode 100644 index 0000000..aaa1c1a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0025.txt @@ -0,0 +1 @@ +30 0.386458 0.476852 0.358333 0.642593 diff --git a/yolo_mindspore/dataset/mask/labels/val/0026.txt b/yolo_mindspore/dataset/mask/labels/val/0026.txt new file mode 100644 index 0000000..c4d86f9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0026.txt @@ -0,0 +1 @@ +30 0.532813 0.350000 0.301042 0.440741 diff --git a/yolo_mindspore/dataset/mask/labels/val/0027.txt b/yolo_mindspore/dataset/mask/labels/val/0027.txt new file mode 100644 index 0000000..d39a4dd --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0027.txt @@ -0,0 +1 @@ +30 0.477083 0.401852 0.250000 0.485185 diff --git a/yolo_mindspore/dataset/mask/labels/val/0029.txt b/yolo_mindspore/dataset/mask/labels/val/0029.txt new file mode 100644 index 0000000..7940576 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0029.txt @@ -0,0 +1 @@ +30 0.501563 0.483333 0.221875 0.477778 diff --git a/yolo_mindspore/dataset/mask/labels/val/0032.txt b/yolo_mindspore/dataset/mask/labels/val/0032.txt new file mode 100644 index 0000000..9738cdc --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0032.txt @@ -0,0 +1 @@ +30 0.381771 0.199074 0.213542 0.327778 diff --git a/yolo_mindspore/dataset/mask/labels/val/0033.txt b/yolo_mindspore/dataset/mask/labels/val/0033.txt new file mode 100644 index 0000000..2080332 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0033.txt @@ -0,0 +1 @@ +30 0.739583 0.399074 0.177083 0.390741 diff --git a/yolo_mindspore/dataset/mask/labels/val/0034.txt b/yolo_mindspore/dataset/mask/labels/val/0034.txt new file mode 100644 index 0000000..90a75e6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0034.txt @@ -0,0 +1 @@ +30 0.392188 0.349074 0.305208 0.446296 diff --git a/yolo_mindspore/dataset/mask/labels/val/0037.txt b/yolo_mindspore/dataset/mask/labels/val/0037.txt new file mode 100644 index 0000000..2c7ea8d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0037.txt @@ -0,0 +1 @@ +30 0.501563 0.408333 0.161458 0.312963 diff --git a/yolo_mindspore/dataset/mask/labels/val/0038.txt b/yolo_mindspore/dataset/mask/labels/val/0038.txt new file mode 100644 index 0000000..9827301 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0038.txt @@ -0,0 +1 @@ +30 0.391667 0.364815 0.408333 0.588889 diff --git a/yolo_mindspore/dataset/mask/labels/val/0039.txt b/yolo_mindspore/dataset/mask/labels/val/0039.txt new file mode 100644 index 0000000..dee5d12 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0039.txt @@ -0,0 +1 @@ +30 0.505729 0.407407 0.153125 0.314815 diff --git a/yolo_mindspore/dataset/mask/labels/val/0041.txt b/yolo_mindspore/dataset/mask/labels/val/0041.txt new file mode 100644 index 0000000..fbffa94 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0041.txt @@ -0,0 +1 @@ +30 0.481771 0.380556 0.136458 0.324074 diff --git a/yolo_mindspore/dataset/mask/labels/val/0042.txt b/yolo_mindspore/dataset/mask/labels/val/0042.txt new file mode 100644 index 0000000..c3d03c1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0042.txt @@ -0,0 +1 @@ +30 0.673958 0.461111 0.318750 0.581481 diff --git a/yolo_mindspore/dataset/mask/labels/val/0045.txt b/yolo_mindspore/dataset/mask/labels/val/0045.txt new file mode 100644 index 0000000..6702084 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0045.txt @@ -0,0 +1 @@ +30 0.386979 0.537037 0.261458 0.637037 diff --git a/yolo_mindspore/dataset/mask/labels/val/0047.txt b/yolo_mindspore/dataset/mask/labels/val/0047.txt new file mode 100644 index 0000000..022e68c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0047.txt @@ -0,0 +1 @@ +30 0.397917 0.335185 0.235417 0.511111 diff --git a/yolo_mindspore/dataset/mask/labels/val/0051.txt b/yolo_mindspore/dataset/mask/labels/val/0051.txt new file mode 100644 index 0000000..55b376c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0051.txt @@ -0,0 +1 @@ +30 0.269271 0.328704 0.290625 0.594444 diff --git a/yolo_mindspore/dataset/mask/labels/val/0054.txt b/yolo_mindspore/dataset/mask/labels/val/0054.txt new file mode 100644 index 0000000..98342d2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0054.txt @@ -0,0 +1 @@ +30 0.536458 0.290741 0.145833 0.244444 diff --git a/yolo_mindspore/dataset/mask/labels/val/00550.txt b/yolo_mindspore/dataset/mask/labels/val/00550.txt new file mode 100644 index 0000000..1d4ef97 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00550.txt @@ -0,0 +1 @@ +1 0.5619791666666667 0.3314814814814815 0.146875 0.3740740740740741 diff --git a/yolo_mindspore/dataset/mask/labels/val/00570.txt b/yolo_mindspore/dataset/mask/labels/val/00570.txt new file mode 100644 index 0000000..8a8f1f1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00570.txt @@ -0,0 +1,2 @@ +1 0.5133333333333333 0.157 0.14666666666666667 0.17400000000000002 +1 0.108 0.216 0.184 0.192 diff --git a/yolo_mindspore/dataset/mask/labels/val/0058.txt b/yolo_mindspore/dataset/mask/labels/val/0058.txt new file mode 100644 index 0000000..7134c86 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0058.txt @@ -0,0 +1 @@ +30 0.609375 0.329630 0.170833 0.433333 diff --git a/yolo_mindspore/dataset/mask/labels/val/0059.txt b/yolo_mindspore/dataset/mask/labels/val/0059.txt new file mode 100644 index 0000000..5ab5a44 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0059.txt @@ -0,0 +1 @@ +30 0.475000 0.375926 0.325000 0.537037 diff --git a/yolo_mindspore/dataset/mask/labels/val/00590.txt b/yolo_mindspore/dataset/mask/labels/val/00590.txt new file mode 100644 index 0000000..60616ae --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00590.txt @@ -0,0 +1,3 @@ +1 0.171875 0.40299479166666663 0.09375 0.14713541666666666 +1 0.48193359375 0.4016927083333333 0.1064453125 0.16796875 +1 0.8759765625 0.3997395833333333 0.091796875 0.1640625 diff --git a/yolo_mindspore/dataset/mask/labels/val/0060.txt b/yolo_mindspore/dataset/mask/labels/val/0060.txt new file mode 100644 index 0000000..17a5ba2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0060.txt @@ -0,0 +1 @@ +30 0.559896 0.280556 0.142708 0.201852 diff --git a/yolo_mindspore/dataset/mask/labels/val/00600.txt b/yolo_mindspore/dataset/mask/labels/val/00600.txt new file mode 100644 index 0000000..1355c97 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00600.txt @@ -0,0 +1 @@ +1 0.390625 0.1998535871156662 0.150390625 0.30014641288433386 diff --git a/yolo_mindspore/dataset/mask/labels/val/00620.txt b/yolo_mindspore/dataset/mask/labels/val/00620.txt new file mode 100644 index 0000000..ca47b50 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00620.txt @@ -0,0 +1,2 @@ +1 0.47705078125 0.1987597911227154 0.1962890625 0.16906005221932116 +1 0.78857421875 0.3064621409921671 0.2216796875 0.17819843342036554 diff --git a/yolo_mindspore/dataset/mask/labels/val/0064.txt b/yolo_mindspore/dataset/mask/labels/val/0064.txt new file mode 100644 index 0000000..41ca91c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0064.txt @@ -0,0 +1 @@ +30 0.471354 0.506481 0.321875 0.624074 diff --git a/yolo_mindspore/dataset/mask/labels/val/00640.txt b/yolo_mindspore/dataset/mask/labels/val/00640.txt new file mode 100644 index 0000000..0c60e0c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00640.txt @@ -0,0 +1 @@ +1 0.5859375 0.306640625 0.12890625 0.22786458333333331 diff --git a/yolo_mindspore/dataset/mask/labels/val/0065.txt b/yolo_mindspore/dataset/mask/labels/val/0065.txt new file mode 100644 index 0000000..1112c52 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0065.txt @@ -0,0 +1 @@ +30 0.396875 0.355556 0.275000 0.481481 diff --git a/yolo_mindspore/dataset/mask/labels/val/00660.txt b/yolo_mindspore/dataset/mask/labels/val/00660.txt new file mode 100644 index 0000000..147e16e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00660.txt @@ -0,0 +1 @@ +1 0.44970703125 0.3845486111111111 0.2333984375 0.564236111111111 diff --git a/yolo_mindspore/dataset/mask/labels/val/0067.txt b/yolo_mindspore/dataset/mask/labels/val/0067.txt new file mode 100644 index 0000000..8c5bf99 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0067.txt @@ -0,0 +1 @@ +30 0.480729 0.387037 0.276042 0.529630 diff --git a/yolo_mindspore/dataset/mask/labels/val/0069.txt b/yolo_mindspore/dataset/mask/labels/val/0069.txt new file mode 100644 index 0000000..16fc53a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0069.txt @@ -0,0 +1 @@ +30 0.483854 0.229630 0.209375 0.296296 diff --git a/yolo_mindspore/dataset/mask/labels/val/00690.txt b/yolo_mindspore/dataset/mask/labels/val/00690.txt new file mode 100644 index 0000000..2253178 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00690.txt @@ -0,0 +1 @@ +1 0.44091796875 0.39498580889309365 0.3623046875 0.38505203405865657 diff --git a/yolo_mindspore/dataset/mask/labels/val/00700.txt b/yolo_mindspore/dataset/mask/labels/val/00700.txt new file mode 100644 index 0000000..ea86a22 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00700.txt @@ -0,0 +1 @@ +1 0.5281250000000001 0.5020833333333333 0.20625000000000002 0.2916666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/val/0071.txt b/yolo_mindspore/dataset/mask/labels/val/0071.txt new file mode 100644 index 0000000..89176eb --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0071.txt @@ -0,0 +1,2 @@ +30 0.451562 0.506481 0.346875 0.646296 +30 0.883854 0.628704 0.138542 0.242593 diff --git a/yolo_mindspore/dataset/mask/labels/val/00710.txt b/yolo_mindspore/dataset/mask/labels/val/00710.txt new file mode 100644 index 0000000..c0c221c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00710.txt @@ -0,0 +1 @@ +1 0.47314453125 0.2821180555555555 0.1611328125 0.4253472222222222 diff --git a/yolo_mindspore/dataset/mask/labels/val/0073.txt b/yolo_mindspore/dataset/mask/labels/val/0073.txt new file mode 100644 index 0000000..9fb41f3 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0073.txt @@ -0,0 +1,2 @@ +30 0.345833 0.311111 0.220833 0.359259 +30 0.698438 0.347222 0.119792 0.253704 diff --git a/yolo_mindspore/dataset/mask/labels/val/00730.txt b/yolo_mindspore/dataset/mask/labels/val/00730.txt new file mode 100644 index 0000000..4152198 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00730.txt @@ -0,0 +1 @@ +1 0.3759765625 0.35836385836385837 0.453125 0.6776556776556777 diff --git a/yolo_mindspore/dataset/mask/labels/val/00740.txt b/yolo_mindspore/dataset/mask/labels/val/00740.txt new file mode 100644 index 0000000..c66ffce --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00740.txt @@ -0,0 +1,3 @@ +1 0.23779296875 0.2764945652173913 0.1552734375 0.2703804347826087 +1 0.77734375 0.18138586956521738 0.1875 0.3138586956521739 +1 0.4921875 0.38926630434782605 0.083984375 0.13994565217391303 diff --git a/yolo_mindspore/dataset/mask/labels/val/0075.txt b/yolo_mindspore/dataset/mask/labels/val/0075.txt new file mode 100644 index 0000000..b958e34 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0075.txt @@ -0,0 +1 @@ +30 0.440625 0.426852 0.222917 0.498148 diff --git a/yolo_mindspore/dataset/mask/labels/val/0076.txt b/yolo_mindspore/dataset/mask/labels/val/0076.txt new file mode 100644 index 0000000..6091905 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0076.txt @@ -0,0 +1 @@ +30 0.630729 0.370370 0.211458 0.525926 diff --git a/yolo_mindspore/dataset/mask/labels/val/0078.txt b/yolo_mindspore/dataset/mask/labels/val/0078.txt new file mode 100644 index 0000000..7e89297 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0078.txt @@ -0,0 +1 @@ +30 0.519271 0.511111 0.273958 0.637037 diff --git a/yolo_mindspore/dataset/mask/labels/val/00780.txt b/yolo_mindspore/dataset/mask/labels/val/00780.txt new file mode 100644 index 0000000..f119175 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00780.txt @@ -0,0 +1 @@ +1 0.52890625 0.35104166666666664 0.1765625 0.2604166666666667 diff --git a/yolo_mindspore/dataset/mask/labels/val/0081.txt b/yolo_mindspore/dataset/mask/labels/val/0081.txt new file mode 100644 index 0000000..ce5533d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0081.txt @@ -0,0 +1 @@ +30 0.413021 0.431481 0.230208 0.488889 diff --git a/yolo_mindspore/dataset/mask/labels/val/00820.txt b/yolo_mindspore/dataset/mask/labels/val/00820.txt new file mode 100644 index 0000000..929c5a9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00820.txt @@ -0,0 +1 @@ +1 0.28933333333333333 0.318 0.3173333333333333 0.28800000000000003 diff --git a/yolo_mindspore/dataset/mask/labels/val/0083.txt b/yolo_mindspore/dataset/mask/labels/val/0083.txt new file mode 100644 index 0000000..50775bc --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0083.txt @@ -0,0 +1 @@ +30 0.470833 0.193519 0.141667 0.238889 diff --git a/yolo_mindspore/dataset/mask/labels/val/0084.txt b/yolo_mindspore/dataset/mask/labels/val/0084.txt new file mode 100644 index 0000000..a51cea4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0084.txt @@ -0,0 +1 @@ +30 0.338542 0.346296 0.145833 0.255556 diff --git a/yolo_mindspore/dataset/mask/labels/val/00850.txt b/yolo_mindspore/dataset/mask/labels/val/00850.txt new file mode 100644 index 0000000..56bb551 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00850.txt @@ -0,0 +1 @@ +1 0.486328125 0.2629310344827586 0.693359375 0.5100574712643678 diff --git a/yolo_mindspore/dataset/mask/labels/val/0086.txt b/yolo_mindspore/dataset/mask/labels/val/0086.txt new file mode 100644 index 0000000..18f4b17 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0086.txt @@ -0,0 +1,2 @@ +30 0.330208 0.333333 0.254167 0.507407 +30 0.723437 0.547222 0.155208 0.420370 diff --git a/yolo_mindspore/dataset/mask/labels/val/00860.txt b/yolo_mindspore/dataset/mask/labels/val/00860.txt new file mode 100644 index 0000000..9946114 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00860.txt @@ -0,0 +1,3 @@ +1 0.2451171875 0.28306092124814264 0.13671875 0.27191679049034173 +1 0.45068359375 0.17830609212481424 0.1396484375 0.2852897473997028 +1 0.8173828125 0.25854383358098065 0.13671875 0.23179791976225853 diff --git a/yolo_mindspore/dataset/mask/labels/val/0092.txt b/yolo_mindspore/dataset/mask/labels/val/0092.txt new file mode 100644 index 0000000..50b8ce6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0092.txt @@ -0,0 +1 @@ +30 0.504687 0.407407 0.261458 0.633333 diff --git a/yolo_mindspore/dataset/mask/labels/val/00920.txt b/yolo_mindspore/dataset/mask/labels/val/00920.txt new file mode 100644 index 0000000..02719a6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00920.txt @@ -0,0 +1 @@ +1 0.5921875 0.390625 0.20625000000000002 0.2895833333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/0093.txt b/yolo_mindspore/dataset/mask/labels/val/0093.txt new file mode 100644 index 0000000..9d7b2ad --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0093.txt @@ -0,0 +1 @@ +30 0.517708 0.425000 0.268750 0.612963 diff --git a/yolo_mindspore/dataset/mask/labels/val/00940.txt b/yolo_mindspore/dataset/mask/labels/val/00940.txt new file mode 100644 index 0000000..4d04d51 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00940.txt @@ -0,0 +1 @@ +1 0.361328125 0.38037109375 0.171875 0.2333984375 diff --git a/yolo_mindspore/dataset/mask/labels/val/00960.txt b/yolo_mindspore/dataset/mask/labels/val/00960.txt new file mode 100644 index 0000000..ee2cfbd --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00960.txt @@ -0,0 +1 @@ +1 0.42431640625 0.16094210009813542 0.2021484375 0.26300294406280667 diff --git a/yolo_mindspore/dataset/mask/labels/val/00970.txt b/yolo_mindspore/dataset/mask/labels/val/00970.txt new file mode 100644 index 0000000..45666e9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00970.txt @@ -0,0 +1 @@ +1 0.5171875 0.4 0.178125 0.29583333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/val/0098.txt b/yolo_mindspore/dataset/mask/labels/val/0098.txt new file mode 100644 index 0000000..f241783 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0098.txt @@ -0,0 +1,4 @@ +30 0.507812 0.406481 0.123958 0.268519 +30 0.292187 0.280556 0.128125 0.250000 +30 0.845833 0.255556 0.191667 0.355556 +30 0.079687 0.450000 0.144792 0.422222 diff --git a/yolo_mindspore/dataset/mask/labels/val/00990.txt b/yolo_mindspore/dataset/mask/labels/val/00990.txt new file mode 100644 index 0000000..ae15c6a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/00990.txt @@ -0,0 +1 @@ +1 0.6103515625 0.567938021454112 0.275390625 0.5089392133492252 diff --git a/yolo_mindspore/dataset/mask/labels/val/01000.txt b/yolo_mindspore/dataset/mask/labels/val/01000.txt new file mode 100644 index 0000000..359740b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01000.txt @@ -0,0 +1 @@ +1 0.6218750000000001 0.4197916666666667 0.17500000000000002 0.26875 diff --git a/yolo_mindspore/dataset/mask/labels/val/0101.txt b/yolo_mindspore/dataset/mask/labels/val/0101.txt new file mode 100644 index 0000000..51cf3ad --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0101.txt @@ -0,0 +1 @@ +30 0.453125 0.321296 0.141667 0.253704 diff --git a/yolo_mindspore/dataset/mask/labels/val/01020.txt b/yolo_mindspore/dataset/mask/labels/val/01020.txt new file mode 100644 index 0000000..fa48d2b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01020.txt @@ -0,0 +1,2 @@ +1 0.3098958333333333 0.47222222222222227 0.11354166666666667 0.23703703703703705 +1 0.6052083333333333 0.4287037037037037 0.13333333333333333 0.29814814814814816 diff --git a/yolo_mindspore/dataset/mask/labels/val/01030.txt b/yolo_mindspore/dataset/mask/labels/val/01030.txt new file mode 100644 index 0000000..0086c39 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01030.txt @@ -0,0 +1 @@ +1 0.52109375 0.38125 0.15781250000000002 0.2625 diff --git a/yolo_mindspore/dataset/mask/labels/val/01040.txt b/yolo_mindspore/dataset/mask/labels/val/01040.txt new file mode 100644 index 0000000..b2181c6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01040.txt @@ -0,0 +1 @@ +1 0.5265625 0.3375 0.14375000000000002 0.22916666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/val/01050.txt b/yolo_mindspore/dataset/mask/labels/val/01050.txt new file mode 100644 index 0000000..f7d6481 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01050.txt @@ -0,0 +1 @@ +1 0.46640625 0.3958333333333333 0.2390625 0.4083333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/01060.txt b/yolo_mindspore/dataset/mask/labels/val/01060.txt new file mode 100644 index 0000000..0fb68ef --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01060.txt @@ -0,0 +1 @@ +1 0.5859375 0.44687499999999997 0.209375 0.34375 diff --git a/yolo_mindspore/dataset/mask/labels/val/0107.txt b/yolo_mindspore/dataset/mask/labels/val/0107.txt new file mode 100644 index 0000000..8da44e5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0107.txt @@ -0,0 +1 @@ +30 0.371875 0.366667 0.220833 0.470370 diff --git a/yolo_mindspore/dataset/mask/labels/val/01070.txt b/yolo_mindspore/dataset/mask/labels/val/01070.txt new file mode 100644 index 0000000..65c54ac --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01070.txt @@ -0,0 +1 @@ +1 0.52734375 0.45729166666666665 0.1453125 0.22708333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/0108.txt b/yolo_mindspore/dataset/mask/labels/val/0108.txt new file mode 100644 index 0000000..487b95a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0108.txt @@ -0,0 +1,2 @@ +30 0.428125 0.437963 0.297917 0.572222 +30 0.808854 0.712963 0.144792 0.344444 diff --git a/yolo_mindspore/dataset/mask/labels/val/01080.txt b/yolo_mindspore/dataset/mask/labels/val/01080.txt new file mode 100644 index 0000000..2cee272 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01080.txt @@ -0,0 +1 @@ +1 0.6666666666666666 0.28500000000000003 0.23466666666666666 0.21 diff --git a/yolo_mindspore/dataset/mask/labels/val/0109.txt b/yolo_mindspore/dataset/mask/labels/val/0109.txt new file mode 100644 index 0000000..d1220ac --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0109.txt @@ -0,0 +1 @@ +30 0.515625 0.384259 0.277083 0.461111 diff --git a/yolo_mindspore/dataset/mask/labels/val/0110.txt b/yolo_mindspore/dataset/mask/labels/val/0110.txt new file mode 100644 index 0000000..f74283d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0110.txt @@ -0,0 +1 @@ +30 0.250521 0.414815 0.157292 0.440741 diff --git a/yolo_mindspore/dataset/mask/labels/val/0112.txt b/yolo_mindspore/dataset/mask/labels/val/0112.txt new file mode 100644 index 0000000..8e0beaa --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0112.txt @@ -0,0 +1 @@ +30 0.536458 0.332407 0.143750 0.364815 diff --git a/yolo_mindspore/dataset/mask/labels/val/01120.txt b/yolo_mindspore/dataset/mask/labels/val/01120.txt new file mode 100644 index 0000000..cc54e38 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01120.txt @@ -0,0 +1 @@ +1 0.52578125 0.378125 0.1703125 0.29791666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/val/0113.txt b/yolo_mindspore/dataset/mask/labels/val/0113.txt new file mode 100644 index 0000000..8a13d91 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0113.txt @@ -0,0 +1 @@ +30 0.396875 0.440741 0.252083 0.500000 diff --git a/yolo_mindspore/dataset/mask/labels/val/0114.txt b/yolo_mindspore/dataset/mask/labels/val/0114.txt new file mode 100644 index 0000000..fdd4e66 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0114.txt @@ -0,0 +1 @@ +30 0.560937 0.390741 0.236458 0.292593 diff --git a/yolo_mindspore/dataset/mask/labels/val/01150.txt b/yolo_mindspore/dataset/mask/labels/val/01150.txt new file mode 100644 index 0000000..933bd70 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01150.txt @@ -0,0 +1 @@ +1 0.151 0.4005376344086022 0.298 0.4731182795698925 diff --git a/yolo_mindspore/dataset/mask/labels/val/0116.txt b/yolo_mindspore/dataset/mask/labels/val/0116.txt new file mode 100644 index 0000000..2f08872 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0116.txt @@ -0,0 +1 @@ +30 0.369792 0.427778 0.314583 0.529630 diff --git a/yolo_mindspore/dataset/mask/labels/val/01160.txt b/yolo_mindspore/dataset/mask/labels/val/01160.txt new file mode 100644 index 0000000..79de02f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01160.txt @@ -0,0 +1 @@ +1 0.5359375000000001 0.4458333333333333 0.2 0.30833333333333335 diff --git a/yolo_mindspore/dataset/mask/labels/val/01170.txt b/yolo_mindspore/dataset/mask/labels/val/01170.txt new file mode 100644 index 0000000..adb39f3 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01170.txt @@ -0,0 +1 @@ +1 0.44453125000000004 0.32916666666666666 0.2421875 0.37083333333333335 diff --git a/yolo_mindspore/dataset/mask/labels/val/01200.txt b/yolo_mindspore/dataset/mask/labels/val/01200.txt new file mode 100644 index 0000000..9b562a6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01200.txt @@ -0,0 +1 @@ +1 0.5328125 0.4479166666666667 0.16562500000000002 0.26666666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/val/0121.txt b/yolo_mindspore/dataset/mask/labels/val/0121.txt new file mode 100644 index 0000000..8103561 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0121.txt @@ -0,0 +1 @@ +30 0.424479 0.405556 0.255208 0.455556 diff --git a/yolo_mindspore/dataset/mask/labels/val/01220.txt b/yolo_mindspore/dataset/mask/labels/val/01220.txt new file mode 100644 index 0000000..4362a03 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01220.txt @@ -0,0 +1 @@ +1 0.35107421875 0.23828920570264764 0.2763671875 0.3869653767820774 diff --git a/yolo_mindspore/dataset/mask/labels/val/0124.txt b/yolo_mindspore/dataset/mask/labels/val/0124.txt new file mode 100644 index 0000000..e69de29 diff --git a/yolo_mindspore/dataset/mask/labels/val/0125.txt b/yolo_mindspore/dataset/mask/labels/val/0125.txt new file mode 100644 index 0000000..7fbbfa1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0125.txt @@ -0,0 +1 @@ +30 0.516667 0.457407 0.229167 0.403704 diff --git a/yolo_mindspore/dataset/mask/labels/val/0126.txt b/yolo_mindspore/dataset/mask/labels/val/0126.txt new file mode 100644 index 0000000..829d62a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0126.txt @@ -0,0 +1 @@ +30 0.432812 0.274074 0.307292 0.366667 diff --git a/yolo_mindspore/dataset/mask/labels/val/01260.txt b/yolo_mindspore/dataset/mask/labels/val/01260.txt new file mode 100644 index 0000000..c2746e7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01260.txt @@ -0,0 +1,2 @@ +1 0.42236328125 0.287568306010929 0.2314453125 0.4412568306010929 +1 0.70166015625 0.29713114754098363 0.2275390625 0.4166666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/val/0127.txt b/yolo_mindspore/dataset/mask/labels/val/0127.txt new file mode 100644 index 0000000..0549206 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0127.txt @@ -0,0 +1 @@ +30 0.471875 0.336111 0.125000 0.298148 diff --git a/yolo_mindspore/dataset/mask/labels/val/0128.txt b/yolo_mindspore/dataset/mask/labels/val/0128.txt new file mode 100644 index 0000000..6d99765 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/0128.txt @@ -0,0 +1 @@ +30 0.354167 0.331481 0.156250 0.207407 diff --git a/yolo_mindspore/dataset/mask/labels/val/01310.txt b/yolo_mindspore/dataset/mask/labels/val/01310.txt new file mode 100644 index 0000000..625bd26 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01310.txt @@ -0,0 +1 @@ +1 0.5085937500000001 0.39166666666666666 0.21406250000000002 0.3458333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/01330.txt b/yolo_mindspore/dataset/mask/labels/val/01330.txt new file mode 100644 index 0000000..3fbefa5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01330.txt @@ -0,0 +1 @@ +1 0.515625 0.37028608582574774 0.56640625 0.48439531859557866 diff --git a/yolo_mindspore/dataset/mask/labels/val/01350.txt b/yolo_mindspore/dataset/mask/labels/val/01350.txt new file mode 100644 index 0000000..885258c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01350.txt @@ -0,0 +1 @@ +1 0.52197265625 0.27994791666666663 0.4755859375 0.4114583333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/01360.txt b/yolo_mindspore/dataset/mask/labels/val/01360.txt new file mode 100644 index 0000000..8eae269 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01360.txt @@ -0,0 +1 @@ +1 0.5242187500000001 0.38125 0.15156250000000002 0.23333333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/val/01380.txt b/yolo_mindspore/dataset/mask/labels/val/01380.txt new file mode 100644 index 0000000..5ec3595 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01380.txt @@ -0,0 +1 @@ +1 0.5068359375 0.27956204379562044 0.416015625 0.41751824817518246 diff --git a/yolo_mindspore/dataset/mask/labels/val/01400.txt b/yolo_mindspore/dataset/mask/labels/val/01400.txt new file mode 100644 index 0000000..bc62e59 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01400.txt @@ -0,0 +1,2 @@ +1 0.4453125 0.1847051198963059 0.1328125 0.10628645495787427 +1 0.84033203125 0.19215813350615685 0.1318359375 0.11082307193778354 diff --git a/yolo_mindspore/dataset/mask/labels/val/01410.txt b/yolo_mindspore/dataset/mask/labels/val/01410.txt new file mode 100644 index 0000000..cbe04fb --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01410.txt @@ -0,0 +1 @@ +1 0.48876953125 0.10702199661590524 0.1787109375 0.18358714043993232 diff --git a/yolo_mindspore/dataset/mask/labels/val/01420.txt b/yolo_mindspore/dataset/mask/labels/val/01420.txt new file mode 100644 index 0000000..64c90e3 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01420.txt @@ -0,0 +1 @@ +1 0.401 0.492 0.294 0.48266666666666663 diff --git a/yolo_mindspore/dataset/mask/labels/val/01450.txt b/yolo_mindspore/dataset/mask/labels/val/01450.txt new file mode 100644 index 0000000..971f06f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01450.txt @@ -0,0 +1 @@ +1 0.5484375 0.403125 0.146875 0.22291666666666665 diff --git a/yolo_mindspore/dataset/mask/labels/val/01460.txt b/yolo_mindspore/dataset/mask/labels/val/01460.txt new file mode 100644 index 0000000..65c8869 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01460.txt @@ -0,0 +1,5 @@ +1 0.2509765625 0.18899204244031828 0.1171875 0.22148541114058354 +1 0.35595703125 0.2964190981432361 0.1064453125 0.19496021220159152 +1 0.474609375 0.24403183023872677 0.072265625 0.1909814323607427 +1 0.5556640625 0.3149867374005305 0.076171875 0.15517241379310345 +1 0.65234375 0.2679045092838196 0.083984375 0.18037135278514588 diff --git a/yolo_mindspore/dataset/mask/labels/val/01470.txt b/yolo_mindspore/dataset/mask/labels/val/01470.txt new file mode 100644 index 0000000..c07873b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01470.txt @@ -0,0 +1 @@ +1 0.5146484375 0.25830078125 0.373046875 0.4873046875 diff --git a/yolo_mindspore/dataset/mask/labels/val/01500.txt b/yolo_mindspore/dataset/mask/labels/val/01500.txt new file mode 100644 index 0000000..ad2b5f2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01500.txt @@ -0,0 +1 @@ +1 0.498046875 0.3026315789473684 0.462890625 0.45951417004048584 diff --git a/yolo_mindspore/dataset/mask/labels/val/01530.txt b/yolo_mindspore/dataset/mask/labels/val/01530.txt new file mode 100644 index 0000000..92cfed9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01530.txt @@ -0,0 +1,2 @@ +1 0.225 0.2533333333333333 0.134 0.21333333333333332 +1 0.628 0.216 0.124 0.208 diff --git a/yolo_mindspore/dataset/mask/labels/val/01550.txt b/yolo_mindspore/dataset/mask/labels/val/01550.txt new file mode 100644 index 0000000..9c3e32d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01550.txt @@ -0,0 +1 @@ +1 0.49375 0.421875 0.22187500000000002 0.33541666666666664 diff --git a/yolo_mindspore/dataset/mask/labels/val/01560.txt b/yolo_mindspore/dataset/mask/labels/val/01560.txt new file mode 100644 index 0000000..1b24441 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01560.txt @@ -0,0 +1 @@ +1 0.4697265625 0.18570402298850575 0.236328125 0.23922413793103448 diff --git a/yolo_mindspore/dataset/mask/labels/val/01580.txt b/yolo_mindspore/dataset/mask/labels/val/01580.txt new file mode 100644 index 0000000..ac7c551 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01580.txt @@ -0,0 +1,3 @@ +1 0.4951171875 0.4216691068814056 0.04296875 0.06734992679355783 +1 0.63525390625 0.40995607613469986 0.0498046875 0.07027818448023426 +1 0.7431640625 0.4150805270863836 0.037109375 0.06881405563689605 diff --git a/yolo_mindspore/dataset/mask/labels/val/01590.txt b/yolo_mindspore/dataset/mask/labels/val/01590.txt new file mode 100644 index 0000000..1f1516b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01590.txt @@ -0,0 +1 @@ +1 0.38525390625 0.45492957746478874 0.3408203125 0.6929577464788733 diff --git a/yolo_mindspore/dataset/mask/labels/val/01610.txt b/yolo_mindspore/dataset/mask/labels/val/01610.txt new file mode 100644 index 0000000..473f361 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01610.txt @@ -0,0 +1 @@ +1 0.4033203125 0.48046875 0.654296875 0.9401041666666666 diff --git a/yolo_mindspore/dataset/mask/labels/val/01620.txt b/yolo_mindspore/dataset/mask/labels/val/01620.txt new file mode 100644 index 0000000..3f7101d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01620.txt @@ -0,0 +1,2 @@ +1 0.353515625 0.30781250000000004 0.123046875 0.290625 +1 0.5341796875 0.18828125 0.13671875 0.2765625 diff --git a/yolo_mindspore/dataset/mask/labels/val/01630.txt b/yolo_mindspore/dataset/mask/labels/val/01630.txt new file mode 100644 index 0000000..5a6e8e9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01630.txt @@ -0,0 +1,4 @@ +1 0.18115234375 0.08409279204639603 0.1279296875 0.1168185584092792 +1 0.40283203125 0.1992543496271748 0.0986328125 0.11184755592377796 +1 0.576171875 0.19552609776304888 0.115234375 0.1060480530240265 +1 0.83154296875 0.1512013256006628 0.1162109375 0.1168185584092792 diff --git a/yolo_mindspore/dataset/mask/labels/val/01640.txt b/yolo_mindspore/dataset/mask/labels/val/01640.txt new file mode 100644 index 0000000..b7a5d3c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01640.txt @@ -0,0 +1,7 @@ +1 0.10888671875 0.18281938325991187 0.0908203125 0.16005873715124816 +1 0.255859375 0.2533039647577092 0.072265625 0.1277533039647577 +1 0.3720703125 0.29148311306901614 0.087890625 0.15418502202643172 +1 0.4775390625 0.1872246696035242 0.0703125 0.13656387665198236 +1 0.568359375 0.2834067547723935 0.0859375 0.16740088105726872 +1 0.71142578125 0.2731277533039647 0.0869140625 0.15859030837004404 +1 0.87158203125 0.2408223201174743 0.0888671875 0.17621145374449337 diff --git a/yolo_mindspore/dataset/mask/labels/val/01650.txt b/yolo_mindspore/dataset/mask/labels/val/01650.txt new file mode 100644 index 0000000..f928c82 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01650.txt @@ -0,0 +1,2 @@ +1 0.37744140625 0.21435546875 0.1298828125 0.1884765625 +1 0.62109375 0.1376953125 0.16015625 0.19140625 diff --git a/yolo_mindspore/dataset/mask/labels/val/01660.txt b/yolo_mindspore/dataset/mask/labels/val/01660.txt new file mode 100644 index 0000000..5f96b36 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01660.txt @@ -0,0 +1,3 @@ +1 0.309375 0.4712962962962963 0.10416666666666667 0.21296296296296297 +1 0.6135416666666667 0.47314814814814815 0.1125 0.2537037037037037 +1 0.8645833333333334 0.3074074074074074 0.15625 0.40370370370370373 diff --git a/yolo_mindspore/dataset/mask/labels/val/01670.txt b/yolo_mindspore/dataset/mask/labels/val/01670.txt new file mode 100644 index 0000000..7bb2ef5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01670.txt @@ -0,0 +1 @@ +1 0.5421875 0.45729166666666665 0.1875 0.28125 diff --git a/yolo_mindspore/dataset/mask/labels/val/01680.txt b/yolo_mindspore/dataset/mask/labels/val/01680.txt new file mode 100644 index 0000000..9bec134 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01680.txt @@ -0,0 +1 @@ +1 0.48020833333333335 0.4314814814814815 0.1375 0.34444444444444444 diff --git a/yolo_mindspore/dataset/mask/labels/val/01690.txt b/yolo_mindspore/dataset/mask/labels/val/01690.txt new file mode 100644 index 0000000..a7378f9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01690.txt @@ -0,0 +1 @@ +1 0.6171875 0.328125 0.1875 0.26875 diff --git a/yolo_mindspore/dataset/mask/labels/val/01700.txt b/yolo_mindspore/dataset/mask/labels/val/01700.txt new file mode 100644 index 0000000..0b20dd6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01700.txt @@ -0,0 +1,4 @@ +1 0.30322265625 0.12007042253521127 0.1494140625 0.12464788732394366 +1 0.6220703125 0.11338028169014085 0.138671875 0.12112676056338029 +1 0.84716796875 0.09577464788732395 0.0732421875 0.056338028169014086 +1 0.1064453125 0.11408450704225352 0.06640625 0.04084507042253521 diff --git a/yolo_mindspore/dataset/mask/labels/val/01710.txt b/yolo_mindspore/dataset/mask/labels/val/01710.txt new file mode 100644 index 0000000..59eb1e8 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01710.txt @@ -0,0 +1 @@ +1 0.47119140625 0.16699029126213594 0.2548828125 0.2174757281553398 diff --git a/yolo_mindspore/dataset/mask/labels/val/01730.txt b/yolo_mindspore/dataset/mask/labels/val/01730.txt new file mode 100644 index 0000000..f99a701 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01730.txt @@ -0,0 +1 @@ +1 0.49843750000000003 0.5177083333333333 0.15937500000000002 0.23541666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/val/01740.txt b/yolo_mindspore/dataset/mask/labels/val/01740.txt new file mode 100644 index 0000000..7776272 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01740.txt @@ -0,0 +1 @@ +1 0.545 0.3780120481927711 0.166 0.3102409638554217 diff --git a/yolo_mindspore/dataset/mask/labels/val/01760.txt b/yolo_mindspore/dataset/mask/labels/val/01760.txt new file mode 100644 index 0000000..9aaf658 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01760.txt @@ -0,0 +1 @@ +1 0.49267578125 0.36041009463722395 0.2333984375 0.5347003154574133 diff --git a/yolo_mindspore/dataset/mask/labels/val/01770.txt b/yolo_mindspore/dataset/mask/labels/val/01770.txt new file mode 100644 index 0000000..c590d04 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01770.txt @@ -0,0 +1 @@ +1 0.67 0.09009009009009009 0.10400000000000001 0.15615615615615616 diff --git a/yolo_mindspore/dataset/mask/labels/val/01780.txt b/yolo_mindspore/dataset/mask/labels/val/01780.txt new file mode 100644 index 0000000..c800afc --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01780.txt @@ -0,0 +1 @@ +1 0.388671875 0.39013671875 0.439453125 0.5517578125 diff --git a/yolo_mindspore/dataset/mask/labels/val/01800.txt b/yolo_mindspore/dataset/mask/labels/val/01800.txt new file mode 100644 index 0000000..b295e3c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01800.txt @@ -0,0 +1 @@ +1 0.49267578125 0.26758204956463494 0.4326171875 0.3904889484259879 diff --git a/yolo_mindspore/dataset/mask/labels/val/01870.txt b/yolo_mindspore/dataset/mask/labels/val/01870.txt new file mode 100644 index 0000000..edcd10f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01870.txt @@ -0,0 +1 @@ +1 0.56015625 0.40729166666666666 0.16718750000000002 0.25625 diff --git a/yolo_mindspore/dataset/mask/labels/val/01890.txt b/yolo_mindspore/dataset/mask/labels/val/01890.txt new file mode 100644 index 0000000..537da50 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01890.txt @@ -0,0 +1 @@ +1 0.2861328125 0.41594454072790293 0.2109375 0.537261698440208 diff --git a/yolo_mindspore/dataset/mask/labels/val/01900.txt b/yolo_mindspore/dataset/mask/labels/val/01900.txt new file mode 100644 index 0000000..445ff2b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01900.txt @@ -0,0 +1 @@ +1 0.56796875 0.3989583333333333 0.19843750000000002 0.29375 diff --git a/yolo_mindspore/dataset/mask/labels/val/01910.txt b/yolo_mindspore/dataset/mask/labels/val/01910.txt new file mode 100644 index 0000000..0eab4be --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01910.txt @@ -0,0 +1 @@ +1 0.4990234375 0.33844647519582244 0.65625 0.5163185378590078 diff --git a/yolo_mindspore/dataset/mask/labels/val/01920.txt b/yolo_mindspore/dataset/mask/labels/val/01920.txt new file mode 100644 index 0000000..80e6427 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01920.txt @@ -0,0 +1,6 @@ +1 0.13134765625 0.29140625000000003 0.0791015625 0.1296875 +1 0.27197265625 0.34218750000000003 0.0693359375 0.140625 +1 0.40966796875 0.3828125 0.0673828125 0.12187500000000001 +1 0.5439453125 0.31640625 0.08203125 0.1328125 +1 0.693359375 0.23750000000000002 0.07421875 0.1375 +1 0.84423828125 0.20390625 0.0693359375 0.1296875 diff --git a/yolo_mindspore/dataset/mask/labels/val/01960.txt b/yolo_mindspore/dataset/mask/labels/val/01960.txt new file mode 100644 index 0000000..52eeab2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01960.txt @@ -0,0 +1,3 @@ +1 0.323 0.27999999999999997 0.21 0.3466666666666667 +1 0.489 0.5106666666666666 0.146 0.2373333333333333 +1 0.8150000000000001 0.43466666666666665 0.222 0.2826666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/val/01970.txt b/yolo_mindspore/dataset/mask/labels/val/01970.txt new file mode 100644 index 0000000..1ff125d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01970.txt @@ -0,0 +1 @@ +1 0.4375 0.2867540029112082 0.38671875 0.35516739446870454 diff --git a/yolo_mindspore/dataset/mask/labels/val/01980.txt b/yolo_mindspore/dataset/mask/labels/val/01980.txt new file mode 100644 index 0000000..1e3a56a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01980.txt @@ -0,0 +1,4 @@ +1 0.29052734375 0.27519893899204245 0.1044921875 0.1445623342175066 +1 0.46044921875 0.2652519893899204 0.1064453125 0.17771883289124668 +1 0.62060546875 0.09681697612732094 0.0830078125 0.14058355437665782 +1 0.73828125 0.2791777188328912 0.09765625 0.16578249336870027 diff --git a/yolo_mindspore/dataset/mask/labels/val/01990.txt b/yolo_mindspore/dataset/mask/labels/val/01990.txt new file mode 100644 index 0000000..7923a09 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/01990.txt @@ -0,0 +1 @@ +1 0.46953125 0.328125 0.1796875 0.27291666666666664 diff --git a/yolo_mindspore/dataset/mask/labels/val/02040.txt b/yolo_mindspore/dataset/mask/labels/val/02040.txt new file mode 100644 index 0000000..404c56d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02040.txt @@ -0,0 +1 @@ +1 0.46240234375 0.4329268292682927 0.4541015625 0.6951219512195121 diff --git a/yolo_mindspore/dataset/mask/labels/val/02080.txt b/yolo_mindspore/dataset/mask/labels/val/02080.txt new file mode 100644 index 0000000..1d76059 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02080.txt @@ -0,0 +1 @@ +1 0.48486328125 0.28828125 0.3740234375 0.390625 diff --git a/yolo_mindspore/dataset/mask/labels/val/02100.txt b/yolo_mindspore/dataset/mask/labels/val/02100.txt new file mode 100644 index 0000000..4a21e2a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02100.txt @@ -0,0 +1,2 @@ +1 0.2703125 0.24537037037037038 0.153125 0.3055555555555556 +1 0.8953125 0.21666666666666667 0.209375 0.3925925925925926 diff --git a/yolo_mindspore/dataset/mask/labels/val/02130.txt b/yolo_mindspore/dataset/mask/labels/val/02130.txt new file mode 100644 index 0000000..c934c4e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02130.txt @@ -0,0 +1 @@ +1 0.51015625 0.36666666666666664 0.17343750000000002 0.25 diff --git a/yolo_mindspore/dataset/mask/labels/val/02140.txt b/yolo_mindspore/dataset/mask/labels/val/02140.txt new file mode 100644 index 0000000..5fd3ad4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02140.txt @@ -0,0 +1 @@ +1 0.48486328125 0.3048016701461378 0.5615234375 0.5427974947807933 diff --git a/yolo_mindspore/dataset/mask/labels/val/02160.txt b/yolo_mindspore/dataset/mask/labels/val/02160.txt new file mode 100644 index 0000000..28dd31c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02160.txt @@ -0,0 +1 @@ +1 0.49755859375 0.21868787276341947 0.2470703125 0.2962226640159045 diff --git a/yolo_mindspore/dataset/mask/labels/val/02170.txt b/yolo_mindspore/dataset/mask/labels/val/02170.txt new file mode 100644 index 0000000..f31faba --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02170.txt @@ -0,0 +1 @@ +1 0.56953125 0.4041666666666667 0.20468750000000002 0.3 diff --git a/yolo_mindspore/dataset/mask/labels/val/02210.txt b/yolo_mindspore/dataset/mask/labels/val/02210.txt new file mode 100644 index 0000000..5131b36 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02210.txt @@ -0,0 +1 @@ +1 0.58359375 0.46249999999999997 0.1953125 0.2916666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/val/02240.txt b/yolo_mindspore/dataset/mask/labels/val/02240.txt new file mode 100644 index 0000000..41f6f40 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02240.txt @@ -0,0 +1,2 @@ +1 0.44384765625 0.41421143847487 0.0849609375 0.22530329289428075 +1 0.5732421875 0.22010398613518195 0.123046875 0.24263431542461003 diff --git a/yolo_mindspore/dataset/mask/labels/val/02260.txt b/yolo_mindspore/dataset/mask/labels/val/02260.txt new file mode 100644 index 0000000..33b321b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02260.txt @@ -0,0 +1 @@ +1 0.44873046875 0.14264619019492025 0.2080078125 0.17542823390431186 diff --git a/yolo_mindspore/dataset/mask/labels/val/02280.txt b/yolo_mindspore/dataset/mask/labels/val/02280.txt new file mode 100644 index 0000000..06c51e9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02280.txt @@ -0,0 +1 @@ +1 0.56953125 0.4708333333333333 0.19843750000000002 0.3458333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/02290.txt b/yolo_mindspore/dataset/mask/labels/val/02290.txt new file mode 100644 index 0000000..503e210 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02290.txt @@ -0,0 +1 @@ +1 0.30615234375 0.48871527777777773 0.3798828125 0.9322916666666666 diff --git a/yolo_mindspore/dataset/mask/labels/val/02300.txt b/yolo_mindspore/dataset/mask/labels/val/02300.txt new file mode 100644 index 0000000..b1f5e50 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02300.txt @@ -0,0 +1 @@ +1 0.5281250000000001 0.5072916666666667 0.184375 0.28541666666666665 diff --git a/yolo_mindspore/dataset/mask/labels/val/02310.txt b/yolo_mindspore/dataset/mask/labels/val/02310.txt new file mode 100644 index 0000000..81754b5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02310.txt @@ -0,0 +1 @@ +1 0.43671875000000004 0.4375 0.20468750000000002 0.325 diff --git a/yolo_mindspore/dataset/mask/labels/val/02340.txt b/yolo_mindspore/dataset/mask/labels/val/02340.txt new file mode 100644 index 0000000..6cbf5bd --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02340.txt @@ -0,0 +1,2 @@ +1 0.389 0.17866666666666667 0.258 0.3413333333333333 +1 0.6 0.36533333333333334 0.192 0.2773333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/02350.txt b/yolo_mindspore/dataset/mask/labels/val/02350.txt new file mode 100644 index 0000000..f0b4901 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02350.txt @@ -0,0 +1,4 @@ +1 0.631 0.444 0.074 0.13066666666666665 +1 0.515 0.4933333333333333 0.078 0.112 +1 0.393 0.448 0.078 0.12266666666666666 +1 0.25 0.5213333333333333 0.088 0.11466666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/val/02370.txt b/yolo_mindspore/dataset/mask/labels/val/02370.txt new file mode 100644 index 0000000..d894b79 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02370.txt @@ -0,0 +1 @@ +1 0.59912109375 0.32650073206442165 0.2177734375 0.35431918008784774 diff --git a/yolo_mindspore/dataset/mask/labels/val/02380.txt b/yolo_mindspore/dataset/mask/labels/val/02380.txt new file mode 100644 index 0000000..3abdcb1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02380.txt @@ -0,0 +1 @@ +1 0.50439453125 0.27115885416666663 0.2607421875 0.263671875 diff --git a/yolo_mindspore/dataset/mask/labels/val/02400.txt b/yolo_mindspore/dataset/mask/labels/val/02400.txt new file mode 100644 index 0000000..bb8cfad --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02400.txt @@ -0,0 +1 @@ +1 0.5437500000000001 0.42291666666666666 0.146875 0.25 diff --git a/yolo_mindspore/dataset/mask/labels/val/02420.txt b/yolo_mindspore/dataset/mask/labels/val/02420.txt new file mode 100644 index 0000000..959a0c2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02420.txt @@ -0,0 +1 @@ +1 0.5554687500000001 0.3229166666666667 0.2234375 0.3 diff --git a/yolo_mindspore/dataset/mask/labels/val/02440.txt b/yolo_mindspore/dataset/mask/labels/val/02440.txt new file mode 100644 index 0000000..355a8f5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02440.txt @@ -0,0 +1,2 @@ +1 0.4015625 0.4 0.10104166666666667 0.24074074074074076 +1 0.7161458333333334 0.3944444444444445 0.11562499999999999 0.25925925925925924 diff --git a/yolo_mindspore/dataset/mask/labels/val/02450.txt b/yolo_mindspore/dataset/mask/labels/val/02450.txt new file mode 100644 index 0000000..f9d4dab --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02450.txt @@ -0,0 +1 @@ +1 0.49453125000000003 0.49166666666666664 0.2171875 0.26666666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/val/02490.txt b/yolo_mindspore/dataset/mask/labels/val/02490.txt new file mode 100644 index 0000000..5588659 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02490.txt @@ -0,0 +1 @@ +1 0.48193359375 0.28125 0.4755859375 0.40625 diff --git a/yolo_mindspore/dataset/mask/labels/val/02500.txt b/yolo_mindspore/dataset/mask/labels/val/02500.txt new file mode 100644 index 0000000..a2a2f68 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02500.txt @@ -0,0 +1,3 @@ +1 0.2890625 0.3351851851851852 0.09895833333333333 0.1925925925925926 +1 0.42864583333333334 0.4 0.04895833333333333 0.10370370370370371 +1 0.7567708333333333 0.25833333333333336 0.06979166666666667 0.12407407407407407 diff --git a/yolo_mindspore/dataset/mask/labels/val/02510.txt b/yolo_mindspore/dataset/mask/labels/val/02510.txt new file mode 100644 index 0000000..22ec62f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02510.txt @@ -0,0 +1 @@ +1 0.6376953125 0.1299212598425197 0.31640625 0.21709786276715412 diff --git a/yolo_mindspore/dataset/mask/labels/val/02520.txt b/yolo_mindspore/dataset/mask/labels/val/02520.txt new file mode 100644 index 0000000..2069102 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02520.txt @@ -0,0 +1 @@ +1 0.54345703125 0.17564655172413793 0.2626953125 0.23204022988505746 diff --git a/yolo_mindspore/dataset/mask/labels/val/02530.txt b/yolo_mindspore/dataset/mask/labels/val/02530.txt new file mode 100644 index 0000000..07be630 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02530.txt @@ -0,0 +1 @@ +1 0.52392578125 0.3259687287559483 0.5087890625 0.5254928619986403 diff --git a/yolo_mindspore/dataset/mask/labels/val/02540.txt b/yolo_mindspore/dataset/mask/labels/val/02540.txt new file mode 100644 index 0000000..b92f225 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02540.txt @@ -0,0 +1 @@ +1 0.578125 0.375 0.19687500000000002 0.275 diff --git a/yolo_mindspore/dataset/mask/labels/val/02570.txt b/yolo_mindspore/dataset/mask/labels/val/02570.txt new file mode 100644 index 0000000..b63b315 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02570.txt @@ -0,0 +1 @@ +1 0.4375 0.3788961038961039 0.478515625 0.4642857142857143 diff --git a/yolo_mindspore/dataset/mask/labels/val/02580.txt b/yolo_mindspore/dataset/mask/labels/val/02580.txt new file mode 100644 index 0000000..95ca170 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02580.txt @@ -0,0 +1 @@ +1 0.5171875 0.340625 0.19062500000000002 0.2895833333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/02600.txt b/yolo_mindspore/dataset/mask/labels/val/02600.txt new file mode 100644 index 0000000..fb83cc4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02600.txt @@ -0,0 +1 @@ +1 0.50625 0.4354166666666667 0.19062500000000002 0.29583333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/val/02610.txt b/yolo_mindspore/dataset/mask/labels/val/02610.txt new file mode 100644 index 0000000..0be60ca --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02610.txt @@ -0,0 +1 @@ +1 0.59609375 0.33958333333333335 0.1796875 0.32916666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/val/02630.txt b/yolo_mindspore/dataset/mask/labels/val/02630.txt new file mode 100644 index 0000000..25cc112 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02630.txt @@ -0,0 +1 @@ +1 0.55224609375 0.4 0.3388671875 0.6235294117647059 diff --git a/yolo_mindspore/dataset/mask/labels/val/02640.txt b/yolo_mindspore/dataset/mask/labels/val/02640.txt new file mode 100644 index 0000000..4db82c0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02640.txt @@ -0,0 +1 @@ +1 0.324 0.339 0.37066666666666664 0.382 diff --git a/yolo_mindspore/dataset/mask/labels/val/02650.txt b/yolo_mindspore/dataset/mask/labels/val/02650.txt new file mode 100644 index 0000000..ca90fb1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02650.txt @@ -0,0 +1 @@ +1 0.50625 0.35104166666666664 0.215625 0.33541666666666664 diff --git a/yolo_mindspore/dataset/mask/labels/val/02670.txt b/yolo_mindspore/dataset/mask/labels/val/02670.txt new file mode 100644 index 0000000..36702c0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02670.txt @@ -0,0 +1 @@ +1 0.53125 0.4306640625 0.23828125 0.16861979166666666 diff --git a/yolo_mindspore/dataset/mask/labels/val/02710.txt b/yolo_mindspore/dataset/mask/labels/val/02710.txt new file mode 100644 index 0000000..7f5819a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02710.txt @@ -0,0 +1 @@ +1 0.766 0.503003003003003 0.164 0.3033033033033033 diff --git a/yolo_mindspore/dataset/mask/labels/val/02720.txt b/yolo_mindspore/dataset/mask/labels/val/02720.txt new file mode 100644 index 0000000..d78d156 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02720.txt @@ -0,0 +1,2 @@ +1 0.4421875 0.38981481481481484 0.10104166666666667 0.23148148148148148 +1 0.596875 0.41944444444444445 0.11041666666666666 0.24629629629629632 diff --git a/yolo_mindspore/dataset/mask/labels/val/02730.txt b/yolo_mindspore/dataset/mask/labels/val/02730.txt new file mode 100644 index 0000000..1465ffa --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02730.txt @@ -0,0 +1 @@ +1 0.41500000000000004 0.312 0.122 0.20266666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/val/02740.txt b/yolo_mindspore/dataset/mask/labels/val/02740.txt new file mode 100644 index 0000000..35e9e28 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02740.txt @@ -0,0 +1 @@ +1 0.451171875 0.1806640625 0.310546875 0.2532552083333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/02750.txt b/yolo_mindspore/dataset/mask/labels/val/02750.txt new file mode 100644 index 0000000..55a058b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02750.txt @@ -0,0 +1 @@ +1 0.50244140625 0.26666666666666666 0.3623046875 0.39565217391304347 diff --git a/yolo_mindspore/dataset/mask/labels/val/02760.txt b/yolo_mindspore/dataset/mask/labels/val/02760.txt new file mode 100644 index 0000000..76ada16 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02760.txt @@ -0,0 +1,4 @@ +1 0.17333984375 0.17035398230088494 0.0673828125 0.13126843657817108 +1 0.36083984375 0.24631268436578171 0.0634765625 0.10324483775811209 +1 0.55908203125 0.2485250737463127 0.0576171875 0.1224188790560472 +1 0.73779296875 0.20943952802359883 0.0673828125 0.12684365781710916 diff --git a/yolo_mindspore/dataset/mask/labels/val/02780.txt b/yolo_mindspore/dataset/mask/labels/val/02780.txt new file mode 100644 index 0000000..935b95f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02780.txt @@ -0,0 +1,2 @@ +1 0.38330078125 0.12405731523378583 0.1767578125 0.18174962292609353 +1 0.6181640625 0.27450980392156865 0.1796875 0.1794871794871795 diff --git a/yolo_mindspore/dataset/mask/labels/val/02800.txt b/yolo_mindspore/dataset/mask/labels/val/02800.txt new file mode 100644 index 0000000..6f341f4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02800.txt @@ -0,0 +1 @@ +1 0.51796875 0.475 0.2015625 0.3 diff --git a/yolo_mindspore/dataset/mask/labels/val/02810.txt b/yolo_mindspore/dataset/mask/labels/val/02810.txt new file mode 100644 index 0000000..e1bdf08 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02810.txt @@ -0,0 +1 @@ +1 0.5632812500000001 0.4125 0.21406250000000002 0.3 diff --git a/yolo_mindspore/dataset/mask/labels/val/02840.txt b/yolo_mindspore/dataset/mask/labels/val/02840.txt new file mode 100644 index 0000000..76381c7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02840.txt @@ -0,0 +1,3 @@ +1 0.21337890625 0.10864864864864865 0.1376953125 0.20432432432432432 +1 0.39111328125 0.14972972972972973 0.1513671875 0.18486486486486486 +1 0.87548828125 0.13135135135135134 0.1689453125 0.22378378378378377 diff --git a/yolo_mindspore/dataset/mask/labels/val/02850.txt b/yolo_mindspore/dataset/mask/labels/val/02850.txt new file mode 100644 index 0000000..fa9a64c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02850.txt @@ -0,0 +1 @@ +1 0.496875 0.3989583333333333 0.20625000000000002 0.31875 diff --git a/yolo_mindspore/dataset/mask/labels/val/02860.txt b/yolo_mindspore/dataset/mask/labels/val/02860.txt new file mode 100644 index 0000000..0400196 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02860.txt @@ -0,0 +1 @@ +1 0.46044921875 0.17833981841763943 0.3583984375 0.2814526588845655 diff --git a/yolo_mindspore/dataset/mask/labels/val/02880.txt b/yolo_mindspore/dataset/mask/labels/val/02880.txt new file mode 100644 index 0000000..17495e0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02880.txt @@ -0,0 +1,2 @@ +1 0.3182291666666667 0.31574074074074077 0.165625 0.30185185185185187 +1 0.8859374999999999 0.2564814814814815 0.228125 0.4425925925925926 diff --git a/yolo_mindspore/dataset/mask/labels/val/02890.txt b/yolo_mindspore/dataset/mask/labels/val/02890.txt new file mode 100644 index 0000000..fc6a52b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02890.txt @@ -0,0 +1 @@ +1 0.55078125 0.37916666666666665 0.24531250000000002 0.35 diff --git a/yolo_mindspore/dataset/mask/labels/val/02900.txt b/yolo_mindspore/dataset/mask/labels/val/02900.txt new file mode 100644 index 0000000..f2f6a29 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02900.txt @@ -0,0 +1 @@ +1 0.53828125 0.45208333333333334 0.1484375 0.24583333333333332 diff --git a/yolo_mindspore/dataset/mask/labels/val/02910.txt b/yolo_mindspore/dataset/mask/labels/val/02910.txt new file mode 100644 index 0000000..435d776 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02910.txt @@ -0,0 +1 @@ +1 0.53515625 0.34479166666666666 0.1859375 0.29375 diff --git a/yolo_mindspore/dataset/mask/labels/val/02920.txt b/yolo_mindspore/dataset/mask/labels/val/02920.txt new file mode 100644 index 0000000..e7d1ecb --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02920.txt @@ -0,0 +1 @@ +1 0.56591796875 0.29654255319148937 0.5146484375 0.39361702127659576 diff --git a/yolo_mindspore/dataset/mask/labels/val/02930.txt b/yolo_mindspore/dataset/mask/labels/val/02930.txt new file mode 100644 index 0000000..a3bc9d2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02930.txt @@ -0,0 +1 @@ +1 0.3466796875 0.23871527777777776 0.22265625 0.4392361111111111 diff --git a/yolo_mindspore/dataset/mask/labels/val/02950.txt b/yolo_mindspore/dataset/mask/labels/val/02950.txt new file mode 100644 index 0000000..04826f4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02950.txt @@ -0,0 +1,2 @@ +1 0.2953125 0.39814814814814814 0.165625 0.3925925925925926 +1 0.7671875 0.4027777777777778 0.165625 0.3648148148148148 diff --git a/yolo_mindspore/dataset/mask/labels/val/02990.txt b/yolo_mindspore/dataset/mask/labels/val/02990.txt new file mode 100644 index 0000000..efbac85 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/02990.txt @@ -0,0 +1 @@ +1 0.5320312500000001 0.3125 0.2078125 0.35833333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/val/03030.txt b/yolo_mindspore/dataset/mask/labels/val/03030.txt new file mode 100644 index 0000000..8bcc0a0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03030.txt @@ -0,0 +1 @@ +1 0.5088541666666666 0.4027777777777778 0.221875 0.4981481481481482 diff --git a/yolo_mindspore/dataset/mask/labels/val/03050.txt b/yolo_mindspore/dataset/mask/labels/val/03050.txt new file mode 100644 index 0000000..4950976 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03050.txt @@ -0,0 +1,3 @@ +1 0.146 0.44266666666666665 0.108 0.18666666666666665 +1 0.313 0.484 0.114 0.14133333333333334 +1 0.559 0.4706666666666667 0.058 0.09333333333333332 diff --git a/yolo_mindspore/dataset/mask/labels/val/03060.txt b/yolo_mindspore/dataset/mask/labels/val/03060.txt new file mode 100644 index 0000000..4e21eb9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03060.txt @@ -0,0 +1 @@ +1 0.53828125 0.34375 0.2015625 0.2875 diff --git a/yolo_mindspore/dataset/mask/labels/val/03150.txt b/yolo_mindspore/dataset/mask/labels/val/03150.txt new file mode 100644 index 0000000..001b728 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03150.txt @@ -0,0 +1 @@ +1 0.50625 0.5010416666666666 0.20625000000000002 0.3145833333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/03170.txt b/yolo_mindspore/dataset/mask/labels/val/03170.txt new file mode 100644 index 0000000..f26f79f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03170.txt @@ -0,0 +1,3 @@ +1 0.1953125 0.30139372822299654 0.193359375 0.3519163763066202 +1 0.431640625 0.3042973286875726 0.21484375 0.31823461091753774 +1 0.81884765625 0.22357723577235772 0.2080078125 0.33797909407665505 diff --git a/yolo_mindspore/dataset/mask/labels/val/03180.txt b/yolo_mindspore/dataset/mask/labels/val/03180.txt new file mode 100644 index 0000000..726e778 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03180.txt @@ -0,0 +1 @@ +1 0.490234375 0.2043509272467903 0.44140625 0.3459343794579173 diff --git a/yolo_mindspore/dataset/mask/labels/val/03250.txt b/yolo_mindspore/dataset/mask/labels/val/03250.txt new file mode 100644 index 0000000..c0aab51 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03250.txt @@ -0,0 +1 @@ +1 0.39501953125 0.21952817824377457 0.3896484375 0.31585845347313235 diff --git a/yolo_mindspore/dataset/mask/labels/val/03260.txt b/yolo_mindspore/dataset/mask/labels/val/03260.txt new file mode 100644 index 0000000..f7c5c84 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03260.txt @@ -0,0 +1 @@ +1 0.494140625 0.28527370855821127 0.5078125 0.4518118735543562 diff --git a/yolo_mindspore/dataset/mask/labels/val/03280.txt b/yolo_mindspore/dataset/mask/labels/val/03280.txt new file mode 100644 index 0000000..106b0fe --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03280.txt @@ -0,0 +1 @@ +1 0.5166015625 0.3199013157894737 0.41015625 0.42105263157894735 diff --git a/yolo_mindspore/dataset/mask/labels/val/03290.txt b/yolo_mindspore/dataset/mask/labels/val/03290.txt new file mode 100644 index 0000000..cb6e448 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03290.txt @@ -0,0 +1 @@ +1 0.5554687500000001 0.41875 0.17343750000000002 0.2583333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/03320.txt b/yolo_mindspore/dataset/mask/labels/val/03320.txt new file mode 100644 index 0000000..186040e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03320.txt @@ -0,0 +1 @@ +1 0.5283203125 0.16703296703296702 0.154296875 0.17435897435897435 diff --git a/yolo_mindspore/dataset/mask/labels/val/03330.txt b/yolo_mindspore/dataset/mask/labels/val/03330.txt new file mode 100644 index 0000000..c61f647 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03330.txt @@ -0,0 +1 @@ +1 0.5828125000000001 0.471875 0.20625000000000002 0.3229166666666667 diff --git a/yolo_mindspore/dataset/mask/labels/val/03340.txt b/yolo_mindspore/dataset/mask/labels/val/03340.txt new file mode 100644 index 0000000..cb919bb --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03340.txt @@ -0,0 +1 @@ +1 0.64697265625 0.25045703839122485 0.3193359375 0.43144424131627057 diff --git a/yolo_mindspore/dataset/mask/labels/val/03350.txt b/yolo_mindspore/dataset/mask/labels/val/03350.txt new file mode 100644 index 0000000..f1e5647 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03350.txt @@ -0,0 +1 @@ +1 0.51953125 0.43645833333333334 0.22031250000000002 0.3520833333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/03370.txt b/yolo_mindspore/dataset/mask/labels/val/03370.txt new file mode 100644 index 0000000..7214317 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03370.txt @@ -0,0 +1 @@ +1 0.56796875 0.45 0.1765625 0.2708333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/03390.txt b/yolo_mindspore/dataset/mask/labels/val/03390.txt new file mode 100644 index 0000000..0c99585 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03390.txt @@ -0,0 +1 @@ +1 0.48486328125 0.22216981132075472 0.2060546875 0.24433962264150944 diff --git a/yolo_mindspore/dataset/mask/labels/val/03410.txt b/yolo_mindspore/dataset/mask/labels/val/03410.txt new file mode 100644 index 0000000..8fca366 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03410.txt @@ -0,0 +1 @@ +1 0.49531250000000004 0.4302083333333333 0.25 0.3854166666666667 diff --git a/yolo_mindspore/dataset/mask/labels/val/03430.txt b/yolo_mindspore/dataset/mask/labels/val/03430.txt new file mode 100644 index 0000000..54c9803 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03430.txt @@ -0,0 +1 @@ +1 0.4990234375 0.2351369405477622 0.3984375 0.35136940547762197 diff --git a/yolo_mindspore/dataset/mask/labels/val/03440.txt b/yolo_mindspore/dataset/mask/labels/val/03440.txt new file mode 100644 index 0000000..81e0e89 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03440.txt @@ -0,0 +1 @@ +1 0.6279296875 0.19965277777777776 0.173828125 0.38888888888888884 diff --git a/yolo_mindspore/dataset/mask/labels/val/03460.txt b/yolo_mindspore/dataset/mask/labels/val/03460.txt new file mode 100644 index 0000000..833ac09 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03460.txt @@ -0,0 +1 @@ +1 0.52890625 0.403125 0.1859375 0.28541666666666665 diff --git a/yolo_mindspore/dataset/mask/labels/val/03480.txt b/yolo_mindspore/dataset/mask/labels/val/03480.txt new file mode 100644 index 0000000..0587b38 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03480.txt @@ -0,0 +1 @@ +1 0.4765625 0.16136363636363638 0.232421875 0.2448051948051948 diff --git a/yolo_mindspore/dataset/mask/labels/val/03490.txt b/yolo_mindspore/dataset/mask/labels/val/03490.txt new file mode 100644 index 0000000..843c7c2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03490.txt @@ -0,0 +1,4 @@ +1 0.28125 0.5527086383601757 0.123046875 0.18887262079062958 +1 0.47314453125 0.4882869692532943 0.1103515625 0.20351390922401172 +1 0.6435546875 0.4758418740849195 0.12109375 0.22840409956076135 +1 0.84375 0.4641288433382138 0.1640625 0.2840409956076135 diff --git a/yolo_mindspore/dataset/mask/labels/val/03520.txt b/yolo_mindspore/dataset/mask/labels/val/03520.txt new file mode 100644 index 0000000..7da6ca7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03520.txt @@ -0,0 +1 @@ +1 0.505859375 0.30018331805682863 0.2734375 0.2923923006416132 diff --git a/yolo_mindspore/dataset/mask/labels/val/03530.txt b/yolo_mindspore/dataset/mask/labels/val/03530.txt new file mode 100644 index 0000000..8c59de1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03530.txt @@ -0,0 +1 @@ +1 0.49365234375 0.3204647676161919 0.5048828125 0.4760119940029985 diff --git a/yolo_mindspore/dataset/mask/labels/val/03580.txt b/yolo_mindspore/dataset/mask/labels/val/03580.txt new file mode 100644 index 0000000..866cb00 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03580.txt @@ -0,0 +1,2 @@ +1 0.31884765625 0.09913419913419913 0.1435546875 0.129004329004329 +1 0.55078125 0.09653679653679653 0.140625 0.15324675324675324 diff --git a/yolo_mindspore/dataset/mask/labels/val/03610.txt b/yolo_mindspore/dataset/mask/labels/val/03610.txt new file mode 100644 index 0000000..2821f3d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03610.txt @@ -0,0 +1 @@ +1 0.4859375 0.4927083333333333 0.203125 0.30625 diff --git a/yolo_mindspore/dataset/mask/labels/val/03630.txt b/yolo_mindspore/dataset/mask/labels/val/03630.txt new file mode 100644 index 0000000..73e7bdb --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03630.txt @@ -0,0 +1 @@ +1 0.50439453125 0.1599868593955322 0.3701171875 0.2726675427069645 diff --git a/yolo_mindspore/dataset/mask/labels/val/03650.txt b/yolo_mindspore/dataset/mask/labels/val/03650.txt new file mode 100644 index 0000000..710655e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03650.txt @@ -0,0 +1 @@ +1 0.3598958333333333 0.26203703703703707 0.20520833333333333 0.46111111111111114 diff --git a/yolo_mindspore/dataset/mask/labels/val/03660.txt b/yolo_mindspore/dataset/mask/labels/val/03660.txt new file mode 100644 index 0000000..8b14615 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03660.txt @@ -0,0 +1 @@ +1 0.5234375 0.43124999999999997 0.209375 0.2916666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/val/03680.txt b/yolo_mindspore/dataset/mask/labels/val/03680.txt new file mode 100644 index 0000000..cce0675 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03680.txt @@ -0,0 +1 @@ +1 0.38818359375 0.21187540558079168 0.4794921875 0.3977936404931862 diff --git a/yolo_mindspore/dataset/mask/labels/val/03700.txt b/yolo_mindspore/dataset/mask/labels/val/03700.txt new file mode 100644 index 0000000..6428d36 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03700.txt @@ -0,0 +1 @@ +1 0.55234375 0.3333333333333333 0.19843750000000002 0.2833333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/03710.txt b/yolo_mindspore/dataset/mask/labels/val/03710.txt new file mode 100644 index 0000000..0169cfa --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03710.txt @@ -0,0 +1 @@ +1 0.4755859375 0.2998046875 0.568359375 0.474609375 diff --git a/yolo_mindspore/dataset/mask/labels/val/03730.txt b/yolo_mindspore/dataset/mask/labels/val/03730.txt new file mode 100644 index 0000000..7feef0f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03730.txt @@ -0,0 +1 @@ +1 0.58984375 0.4083333333333333 0.1609375 0.23333333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/val/03740.txt b/yolo_mindspore/dataset/mask/labels/val/03740.txt new file mode 100644 index 0000000..cc23825 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03740.txt @@ -0,0 +1,2 @@ +1 0.521 0.5666666666666667 0.10200000000000001 0.152 +1 0.6960000000000001 0.5439999999999999 0.116 0.17066666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/val/03750.txt b/yolo_mindspore/dataset/mask/labels/val/03750.txt new file mode 100644 index 0000000..25f26f5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03750.txt @@ -0,0 +1 @@ +1 0.53828125 0.30833333333333335 0.16718750000000002 0.2875 diff --git a/yolo_mindspore/dataset/mask/labels/val/03760.txt b/yolo_mindspore/dataset/mask/labels/val/03760.txt new file mode 100644 index 0000000..935c51b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03760.txt @@ -0,0 +1 @@ +1 0.48095703125 0.3950097213220998 0.6064453125 0.5398574206092028 diff --git a/yolo_mindspore/dataset/mask/labels/val/03780.txt b/yolo_mindspore/dataset/mask/labels/val/03780.txt new file mode 100644 index 0000000..e6f2ad9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03780.txt @@ -0,0 +1 @@ +1 0.5593750000000001 0.484375 0.21250000000000002 0.33958333333333335 diff --git a/yolo_mindspore/dataset/mask/labels/val/03800.txt b/yolo_mindspore/dataset/mask/labels/val/03800.txt new file mode 100644 index 0000000..63a71bd --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03800.txt @@ -0,0 +1 @@ +1 0.5419921875 0.17950391644908617 0.34765625 0.24673629242819844 diff --git a/yolo_mindspore/dataset/mask/labels/val/03810.txt b/yolo_mindspore/dataset/mask/labels/val/03810.txt new file mode 100644 index 0000000..4a0fcbf --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03810.txt @@ -0,0 +1 @@ +1 0.50703125 0.40625 0.21406250000000002 0.30833333333333335 diff --git a/yolo_mindspore/dataset/mask/labels/val/03840.txt b/yolo_mindspore/dataset/mask/labels/val/03840.txt new file mode 100644 index 0000000..126daaa --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03840.txt @@ -0,0 +1,2 @@ +1 0.15625 0.4773060029282577 0.1953125 0.17715959004392387 +1 0.75439453125 0.1965592972181552 0.2255859375 0.19692532942898977 diff --git a/yolo_mindspore/dataset/mask/labels/val/03890.txt b/yolo_mindspore/dataset/mask/labels/val/03890.txt new file mode 100644 index 0000000..71ddf9e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03890.txt @@ -0,0 +1 @@ +1 0.40576171875 0.40441176470588236 0.2392578125 0.41470588235294115 diff --git a/yolo_mindspore/dataset/mask/labels/val/03920.txt b/yolo_mindspore/dataset/mask/labels/val/03920.txt new file mode 100644 index 0000000..ae44643 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03920.txt @@ -0,0 +1 @@ +1 0.5203125000000001 0.44166666666666665 0.18125000000000002 0.2875 diff --git a/yolo_mindspore/dataset/mask/labels/val/03940.txt b/yolo_mindspore/dataset/mask/labels/val/03940.txt new file mode 100644 index 0000000..f43667e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03940.txt @@ -0,0 +1 @@ +1 0.4609375 0.20795306388526727 0.357421875 0.3350717079530639 diff --git a/yolo_mindspore/dataset/mask/labels/val/03950.txt b/yolo_mindspore/dataset/mask/labels/val/03950.txt new file mode 100644 index 0000000..05f3bfa --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03950.txt @@ -0,0 +1,4 @@ +1 0.14990234375 0.4158125915080527 0.1083984375 0.21669106881405564 +1 0.36669921875 0.42752562225475843 0.1162109375 0.18740849194729137 +1 0.60009765625 0.32723279648609077 0.1220703125 0.22986822840409957 +1 0.87255859375 0.3440702781844802 0.1298828125 0.2664714494875549 diff --git a/yolo_mindspore/dataset/mask/labels/val/03970.txt b/yolo_mindspore/dataset/mask/labels/val/03970.txt new file mode 100644 index 0000000..6fde884 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03970.txt @@ -0,0 +1 @@ +1 0.5078125 0.5814814814814815 0.13645833333333332 0.32592592592592595 diff --git a/yolo_mindspore/dataset/mask/labels/val/03980.txt b/yolo_mindspore/dataset/mask/labels/val/03980.txt new file mode 100644 index 0000000..20536cb --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/03980.txt @@ -0,0 +1 @@ +1 0.58828125 0.36041666666666666 0.1921875 0.30833333333333335 diff --git a/yolo_mindspore/dataset/mask/labels/val/04000.txt b/yolo_mindspore/dataset/mask/labels/val/04000.txt new file mode 100644 index 0000000..aa5eb4e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04000.txt @@ -0,0 +1,2 @@ +1 0.30224609375 0.2601010101010101 0.3369140625 0.33261183261183264 +1 0.76708984375 0.2976190476190476 0.3583984375 0.3297258297258297 diff --git a/yolo_mindspore/dataset/mask/labels/val/04050.txt b/yolo_mindspore/dataset/mask/labels/val/04050.txt new file mode 100644 index 0000000..7aeda55 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04050.txt @@ -0,0 +1 @@ +1 0.54296875 0.4166666666666667 0.21406250000000002 0.3458333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/04070.txt b/yolo_mindspore/dataset/mask/labels/val/04070.txt new file mode 100644 index 0000000..b112600 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04070.txt @@ -0,0 +1,2 @@ +1 0.28125 0.189453125 0.1796875 0.35026041666666663 +1 0.71728515625 0.306640625 0.1767578125 0.29296875 diff --git a/yolo_mindspore/dataset/mask/labels/val/04110.txt b/yolo_mindspore/dataset/mask/labels/val/04110.txt new file mode 100644 index 0000000..7b397d1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04110.txt @@ -0,0 +1 @@ +1 0.5078125 0.1801831262262917 0.306640625 0.27795945062132116 diff --git a/yolo_mindspore/dataset/mask/labels/val/04120.txt b/yolo_mindspore/dataset/mask/labels/val/04120.txt new file mode 100644 index 0000000..4417be3 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04120.txt @@ -0,0 +1 @@ +1 0.48984375 0.3208333333333333 0.2234375 0.3458333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/04130.txt b/yolo_mindspore/dataset/mask/labels/val/04130.txt new file mode 100644 index 0000000..1e185e4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04130.txt @@ -0,0 +1 @@ +1 0.47998046875 0.322692793931732 0.7392578125 0.5619469026548674 diff --git a/yolo_mindspore/dataset/mask/labels/val/04230.txt b/yolo_mindspore/dataset/mask/labels/val/04230.txt new file mode 100644 index 0000000..72c76d0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04230.txt @@ -0,0 +1 @@ +1 0.52265625 0.31875 0.2078125 0.32916666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/val/04240.txt b/yolo_mindspore/dataset/mask/labels/val/04240.txt new file mode 100644 index 0000000..373561d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04240.txt @@ -0,0 +1 @@ +1 0.42529296875 0.28081123244929795 0.2099609375 0.39001560062402496 diff --git a/yolo_mindspore/dataset/mask/labels/val/04260.txt b/yolo_mindspore/dataset/mask/labels/val/04260.txt new file mode 100644 index 0000000..8fa6185 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04260.txt @@ -0,0 +1,5 @@ +1 0.1337890625 0.15427769985974754 0.091796875 0.1514726507713885 +1 0.3251953125 0.19074333800841514 0.07421875 0.14305750350631136 +1 0.50927734375 0.15357643758765777 0.0888671875 0.15287517531556802 +1 0.71533203125 0.16690042075736325 0.0908203125 0.1514726507713885 +1 0.890625 0.15007012622720897 0.099609375 0.16269284712482468 diff --git a/yolo_mindspore/dataset/mask/labels/val/04290.txt b/yolo_mindspore/dataset/mask/labels/val/04290.txt new file mode 100644 index 0000000..4bff323 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04290.txt @@ -0,0 +1 @@ +1 0.3564453125 0.3831380208333333 0.28515625 0.21419270833333331 diff --git a/yolo_mindspore/dataset/mask/labels/val/04300.txt b/yolo_mindspore/dataset/mask/labels/val/04300.txt new file mode 100644 index 0000000..b0a9a38 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04300.txt @@ -0,0 +1 @@ +1 0.50439453125 0.25875486381322954 0.2822265625 0.23605706874189364 diff --git a/yolo_mindspore/dataset/mask/labels/val/04320.txt b/yolo_mindspore/dataset/mask/labels/val/04320.txt new file mode 100644 index 0000000..a5fc30e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04320.txt @@ -0,0 +1 @@ +1 0.276 0.18133333333333332 0.088 0.128 diff --git a/yolo_mindspore/dataset/mask/labels/val/04330.txt b/yolo_mindspore/dataset/mask/labels/val/04330.txt new file mode 100644 index 0000000..c7f0083 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04330.txt @@ -0,0 +1 @@ +1 0.45654296875 0.29675324675324677 0.3779296875 0.3064935064935065 diff --git a/yolo_mindspore/dataset/mask/labels/val/04360.txt b/yolo_mindspore/dataset/mask/labels/val/04360.txt new file mode 100644 index 0000000..610becc --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04360.txt @@ -0,0 +1 @@ +1 0.5634765625 0.3133986928104575 0.6015625 0.5117647058823529 diff --git a/yolo_mindspore/dataset/mask/labels/val/04380.txt b/yolo_mindspore/dataset/mask/labels/val/04380.txt new file mode 100644 index 0000000..7341e99 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04380.txt @@ -0,0 +1 @@ +1 0.47509765625 0.10944363103953147 0.2138671875 0.17057101024890192 diff --git a/yolo_mindspore/dataset/mask/labels/val/04400.txt b/yolo_mindspore/dataset/mask/labels/val/04400.txt new file mode 100644 index 0000000..d27079d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04400.txt @@ -0,0 +1 @@ +1 0.48876953125 0.24552429667519182 0.3154296875 0.3546462063086104 diff --git a/yolo_mindspore/dataset/mask/labels/val/04410.txt b/yolo_mindspore/dataset/mask/labels/val/04410.txt new file mode 100644 index 0000000..24b8048 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04410.txt @@ -0,0 +1 @@ +1 0.4794921875 0.28729641693811075 0.380859375 0.3622149837133551 diff --git a/yolo_mindspore/dataset/mask/labels/val/04470.txt b/yolo_mindspore/dataset/mask/labels/val/04470.txt new file mode 100644 index 0000000..7d6294d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04470.txt @@ -0,0 +1 @@ +1 0.5361328125 0.2883542538354254 0.484375 0.40655509065550904 diff --git a/yolo_mindspore/dataset/mask/labels/val/04490.txt b/yolo_mindspore/dataset/mask/labels/val/04490.txt new file mode 100644 index 0000000..d93f44f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04490.txt @@ -0,0 +1 @@ +1 0.53466796875 0.42447916666666663 0.3173828125 0.5494791666666666 diff --git a/yolo_mindspore/dataset/mask/labels/val/04520.txt b/yolo_mindspore/dataset/mask/labels/val/04520.txt new file mode 100644 index 0000000..bcca340 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04520.txt @@ -0,0 +1 @@ +1 0.5484375 0.38229166666666664 0.2 0.29791666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/val/04530.txt b/yolo_mindspore/dataset/mask/labels/val/04530.txt new file mode 100644 index 0000000..73b64a5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04530.txt @@ -0,0 +1,2 @@ +1 0.2996987951807229 0.395 0.32228915662650603 0.28600000000000003 +1 0.6912650602409639 0.167 0.3283132530120482 0.298 diff --git a/yolo_mindspore/dataset/mask/labels/val/04540.txt b/yolo_mindspore/dataset/mask/labels/val/04540.txt new file mode 100644 index 0000000..cdb140b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04540.txt @@ -0,0 +1 @@ +1 0.52734375 0.27719665271966526 0.41015625 0.402370990237099 diff --git a/yolo_mindspore/dataset/mask/labels/val/04550.txt b/yolo_mindspore/dataset/mask/labels/val/04550.txt new file mode 100644 index 0000000..a72ca28 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04550.txt @@ -0,0 +1,2 @@ +1 0.322265625 0.2847222222222222 0.13671875 0.2534722222222222 +1 0.83837890625 0.34809027777777773 0.1162109375 0.2065972222222222 diff --git a/yolo_mindspore/dataset/mask/labels/val/04560.txt b/yolo_mindspore/dataset/mask/labels/val/04560.txt new file mode 100644 index 0000000..f64eb94 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04560.txt @@ -0,0 +1 @@ +1 0.45703125 0.18565683646112602 0.36328125 0.2828418230563003 diff --git a/yolo_mindspore/dataset/mask/labels/val/04570.txt b/yolo_mindspore/dataset/mask/labels/val/04570.txt new file mode 100644 index 0000000..201e2a2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04570.txt @@ -0,0 +1 @@ +1 0.79345703125 0.4834217506631299 0.2392578125 0.34615384615384615 diff --git a/yolo_mindspore/dataset/mask/labels/val/04580.txt b/yolo_mindspore/dataset/mask/labels/val/04580.txt new file mode 100644 index 0000000..05c9af7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04580.txt @@ -0,0 +1 @@ +1 0.48583984375 0.43769470404984423 0.3466796875 0.778816199376947 diff --git a/yolo_mindspore/dataset/mask/labels/val/04600.txt b/yolo_mindspore/dataset/mask/labels/val/04600.txt new file mode 100644 index 0000000..df1ae7e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04600.txt @@ -0,0 +1,2 @@ +1 0.18310546875 0.3340643274853801 0.1044921875 0.1739766081871345 +1 0.724609375 0.3384502923976608 0.12109375 0.20906432748538012 diff --git a/yolo_mindspore/dataset/mask/labels/val/04620.txt b/yolo_mindspore/dataset/mask/labels/val/04620.txt new file mode 100644 index 0000000..fbd601d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04620.txt @@ -0,0 +1,2 @@ +1 0.24166666666666667 0.3814814814814815 0.175 0.5037037037037038 +1 0.553125 0.3592592592592593 0.22708333333333333 0.45555555555555555 diff --git a/yolo_mindspore/dataset/mask/labels/val/04630.txt b/yolo_mindspore/dataset/mask/labels/val/04630.txt new file mode 100644 index 0000000..0eccaa7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04630.txt @@ -0,0 +1,2 @@ +1 0.26953125 0.20238095238095238 0.17578125 0.2927170868347339 +1 0.7841796875 0.22408963585434175 0.171875 0.2913165266106443 diff --git a/yolo_mindspore/dataset/mask/labels/val/04640.txt b/yolo_mindspore/dataset/mask/labels/val/04640.txt new file mode 100644 index 0000000..b494000 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04640.txt @@ -0,0 +1,2 @@ +1 0.19140625 0.3125 0.376953125 0.4495614035087719 +1 0.5673828125 0.3340643274853801 0.375 0.41666666666666663 diff --git a/yolo_mindspore/dataset/mask/labels/val/04670.txt b/yolo_mindspore/dataset/mask/labels/val/04670.txt new file mode 100644 index 0000000..4ec056e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04670.txt @@ -0,0 +1 @@ +1 0.36266666666666664 0.40900000000000003 0.27199999999999996 0.25 diff --git a/yolo_mindspore/dataset/mask/labels/val/04680.txt b/yolo_mindspore/dataset/mask/labels/val/04680.txt new file mode 100644 index 0000000..37e993d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04680.txt @@ -0,0 +1 @@ +1 0.46953125 0.403125 0.2515625 0.34791666666666665 diff --git a/yolo_mindspore/dataset/mask/labels/val/04700.txt b/yolo_mindspore/dataset/mask/labels/val/04700.txt new file mode 100644 index 0000000..38ca788 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04700.txt @@ -0,0 +1,2 @@ +1 0.3984848484848485 0.429 0.25757575757575757 0.23800000000000002 +1 0.7924242424242425 0.398 0.38484848484848483 0.264 diff --git a/yolo_mindspore/dataset/mask/labels/val/04710.txt b/yolo_mindspore/dataset/mask/labels/val/04710.txt new file mode 100644 index 0000000..0cf4889 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04710.txt @@ -0,0 +1,2 @@ +1 0.373046875 0.23697916666666666 0.1328125 0.265625 +1 0.6484375 0.125 0.130859375 0.22916666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/val/04730.txt b/yolo_mindspore/dataset/mask/labels/val/04730.txt new file mode 100644 index 0000000..afb991c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04730.txt @@ -0,0 +1 @@ +1 0.58642578125 0.19057377049180327 0.2841796875 0.23946135831381732 diff --git a/yolo_mindspore/dataset/mask/labels/val/04740.txt b/yolo_mindspore/dataset/mask/labels/val/04740.txt new file mode 100644 index 0000000..53a0252 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04740.txt @@ -0,0 +1,2 @@ +1 0.126 0.42666666666666664 0.18 0.304 +1 0.712 0.3733333333333333 0.20800000000000002 0.3466666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/val/04760.txt b/yolo_mindspore/dataset/mask/labels/val/04760.txt new file mode 100644 index 0000000..291de94 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04760.txt @@ -0,0 +1 @@ +1 0.54609375 0.4145833333333333 0.18906250000000002 0.275 diff --git a/yolo_mindspore/dataset/mask/labels/val/04770.txt b/yolo_mindspore/dataset/mask/labels/val/04770.txt new file mode 100644 index 0000000..cd8c47a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04770.txt @@ -0,0 +1 @@ +1 0.38134765625 0.28255675029868577 0.2216796875 0.3548387096774193 diff --git a/yolo_mindspore/dataset/mask/labels/val/04780.txt b/yolo_mindspore/dataset/mask/labels/val/04780.txt new file mode 100644 index 0000000..0a27611 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04780.txt @@ -0,0 +1,2 @@ +1 0.65673828125 0.3487951807228916 0.2705078125 0.42530120481927713 +1 0.22119140625 0.27831325301204823 0.2373046875 0.3662650602409639 diff --git a/yolo_mindspore/dataset/mask/labels/val/04810.txt b/yolo_mindspore/dataset/mask/labels/val/04810.txt new file mode 100644 index 0000000..6fff7f1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04810.txt @@ -0,0 +1 @@ +1 0.48681640625 0.470203488372093 0.6943359375 0.9171511627906976 diff --git a/yolo_mindspore/dataset/mask/labels/val/04820.txt b/yolo_mindspore/dataset/mask/labels/val/04820.txt new file mode 100644 index 0000000..8c4a719 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04820.txt @@ -0,0 +1,2 @@ +1 0.243 0.364 0.266 0.44 +1 0.863 0.3373333333333333 0.23800000000000002 0.408 diff --git a/yolo_mindspore/dataset/mask/labels/val/04840.txt b/yolo_mindspore/dataset/mask/labels/val/04840.txt new file mode 100644 index 0000000..68bd88c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04840.txt @@ -0,0 +1 @@ +1 0.4609375 0.3677083333333333 0.284375 0.46041666666666664 diff --git a/yolo_mindspore/dataset/mask/labels/val/04850.txt b/yolo_mindspore/dataset/mask/labels/val/04850.txt new file mode 100644 index 0000000..7f7a7e9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04850.txt @@ -0,0 +1 @@ +1 0.53076171875 0.3577732518669382 0.5498046875 0.49015614392396467 diff --git a/yolo_mindspore/dataset/mask/labels/val/04860.txt b/yolo_mindspore/dataset/mask/labels/val/04860.txt new file mode 100644 index 0000000..bc53f29 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04860.txt @@ -0,0 +1 @@ +1 0.57421875 0.20219966159052452 0.31640625 0.32148900169204736 diff --git a/yolo_mindspore/dataset/mask/labels/val/04890.txt b/yolo_mindspore/dataset/mask/labels/val/04890.txt new file mode 100644 index 0000000..ce5c1f2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04890.txt @@ -0,0 +1 @@ +1 0.41845703125 0.08903712296983758 0.1982421875 0.15371229698375868 diff --git a/yolo_mindspore/dataset/mask/labels/val/04920.txt b/yolo_mindspore/dataset/mask/labels/val/04920.txt new file mode 100644 index 0000000..90cfbd9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04920.txt @@ -0,0 +1 @@ +1 0.565625 0.4114583333333333 0.16875 0.26875 diff --git a/yolo_mindspore/dataset/mask/labels/val/04930.txt b/yolo_mindspore/dataset/mask/labels/val/04930.txt new file mode 100644 index 0000000..d078242 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04930.txt @@ -0,0 +1 @@ +1 0.5750000000000001 0.31979166666666664 0.234375 0.3020833333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/04950.txt b/yolo_mindspore/dataset/mask/labels/val/04950.txt new file mode 100644 index 0000000..650af56 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04950.txt @@ -0,0 +1 @@ +1 0.5322265625 0.32098765432098764 0.556640625 0.4314489928525016 diff --git a/yolo_mindspore/dataset/mask/labels/val/04960.txt b/yolo_mindspore/dataset/mask/labels/val/04960.txt new file mode 100644 index 0000000..edbb23d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04960.txt @@ -0,0 +1,5 @@ +1 0.2587890625 0.13715277777777776 0.099609375 0.2534722222222222 +1 0.34375 0.2690972222222222 0.076171875 0.20138888888888887 +1 0.53173828125 0.2803819444444444 0.0732421875 0.203125 +1 0.67333984375 0.19791666666666666 0.0947265625 0.2361111111111111 +1 0.796875 0.203125 0.109375 0.2569444444444444 diff --git a/yolo_mindspore/dataset/mask/labels/val/04980.txt b/yolo_mindspore/dataset/mask/labels/val/04980.txt new file mode 100644 index 0000000..e8a8a5d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04980.txt @@ -0,0 +1 @@ +1 0.383 0.23199999999999998 0.198 0.3253333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/04990.txt b/yolo_mindspore/dataset/mask/labels/val/04990.txt new file mode 100644 index 0000000..d1b2345 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/04990.txt @@ -0,0 +1 @@ +1 0.5203125000000001 0.4666666666666667 0.203125 0.275 diff --git a/yolo_mindspore/dataset/mask/labels/val/05020.txt b/yolo_mindspore/dataset/mask/labels/val/05020.txt new file mode 100644 index 0000000..96e82a1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05020.txt @@ -0,0 +1 @@ +1 0.5554687500000001 0.428125 0.2078125 0.34375 diff --git a/yolo_mindspore/dataset/mask/labels/val/05050.txt b/yolo_mindspore/dataset/mask/labels/val/05050.txt new file mode 100644 index 0000000..4b20db1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05050.txt @@ -0,0 +1 @@ +1 0.5146484375 0.14344783715012724 0.236328125 0.20165394402035625 diff --git a/yolo_mindspore/dataset/mask/labels/val/05070.txt b/yolo_mindspore/dataset/mask/labels/val/05070.txt new file mode 100644 index 0000000..3cc7545 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05070.txt @@ -0,0 +1,3 @@ +1 0.251953125 0.15428764348413235 0.17578125 0.1424713031735314 +1 0.56201171875 0.2025658338960162 0.1533203125 0.12964213369345037 +1 0.8544921875 0.09047940580688725 0.11328125 0.0837272113436867 diff --git a/yolo_mindspore/dataset/mask/labels/val/05080.txt b/yolo_mindspore/dataset/mask/labels/val/05080.txt new file mode 100644 index 0000000..d181923 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05080.txt @@ -0,0 +1 @@ +1 0.53369140625 0.38888888888888884 0.3076171875 0.652046783625731 diff --git a/yolo_mindspore/dataset/mask/labels/val/05100.txt b/yolo_mindspore/dataset/mask/labels/val/05100.txt new file mode 100644 index 0000000..5a7b19c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05100.txt @@ -0,0 +1 @@ +1 0.52578125 0.5208333333333334 0.2015625 0.3333333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/05110.txt b/yolo_mindspore/dataset/mask/labels/val/05110.txt new file mode 100644 index 0000000..dccef92 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05110.txt @@ -0,0 +1 @@ +1 0.5125000000000001 0.421875 0.20625000000000002 0.30625 diff --git a/yolo_mindspore/dataset/mask/labels/val/05120.txt b/yolo_mindspore/dataset/mask/labels/val/05120.txt new file mode 100644 index 0000000..3308e8e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05120.txt @@ -0,0 +1 @@ +1 0.48779296875 0.4289422452952628 0.7041015625 0.5957170668397145 diff --git a/yolo_mindspore/dataset/mask/labels/val/05170.txt b/yolo_mindspore/dataset/mask/labels/val/05170.txt new file mode 100644 index 0000000..aee6013 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05170.txt @@ -0,0 +1 @@ +1 0.62939453125 0.23865300146412885 0.1240234375 0.2108345534407028 diff --git a/yolo_mindspore/dataset/mask/labels/val/05180.txt b/yolo_mindspore/dataset/mask/labels/val/05180.txt new file mode 100644 index 0000000..221e6a7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05180.txt @@ -0,0 +1 @@ +1 0.5085937500000001 0.3229166666666667 0.19843750000000002 0.2916666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/val/05190.txt b/yolo_mindspore/dataset/mask/labels/val/05190.txt new file mode 100644 index 0000000..f370ab9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05190.txt @@ -0,0 +1 @@ +1 0.3408203125 0.38095238095238093 0.34765625 0.550595238095238 diff --git a/yolo_mindspore/dataset/mask/labels/val/05200.txt b/yolo_mindspore/dataset/mask/labels/val/05200.txt new file mode 100644 index 0000000..83eb58b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05200.txt @@ -0,0 +1 @@ +1 0.6585937500000001 0.42083333333333334 0.1921875 0.2791666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/val/05210.txt b/yolo_mindspore/dataset/mask/labels/val/05210.txt new file mode 100644 index 0000000..5aa3cc6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05210.txt @@ -0,0 +1 @@ +1 0.5087890625 0.2787878787878788 0.42578125 0.39057239057239057 diff --git a/yolo_mindspore/dataset/mask/labels/val/05230.txt b/yolo_mindspore/dataset/mask/labels/val/05230.txt new file mode 100644 index 0000000..03c2f58 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05230.txt @@ -0,0 +1,2 @@ +1 0.37060546875 0.11023255813953489 0.1025390625 0.10697674418604652 +1 0.60302734375 0.1316279069767442 0.1337890625 0.14976744186046512 diff --git a/yolo_mindspore/dataset/mask/labels/val/05260.txt b/yolo_mindspore/dataset/mask/labels/val/05260.txt new file mode 100644 index 0000000..a2b17aa --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05260.txt @@ -0,0 +1 @@ +1 0.5085937500000001 0.4083333333333333 0.2265625 0.3625 diff --git a/yolo_mindspore/dataset/mask/labels/val/05270.txt b/yolo_mindspore/dataset/mask/labels/val/05270.txt new file mode 100644 index 0000000..e912478 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05270.txt @@ -0,0 +1,2 @@ +1 0.2626953125 0.42178594046865103 0.265625 0.18492716909436352 +1 0.62890625 0.22197593413552882 0.3125 0.2045598480050665 diff --git a/yolo_mindspore/dataset/mask/labels/val/05280.txt b/yolo_mindspore/dataset/mask/labels/val/05280.txt new file mode 100644 index 0000000..f5dffca --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05280.txt @@ -0,0 +1,3 @@ +1 0.162109375 0.22082228116710875 0.140625 0.21883289124668434 +1 0.40869140625 0.3521220159151193 0.1318359375 0.20557029177718833 +1 0.72802734375 0.13660477453580902 0.1513671875 0.24137931034482757 diff --git a/yolo_mindspore/dataset/mask/labels/val/05290.txt b/yolo_mindspore/dataset/mask/labels/val/05290.txt new file mode 100644 index 0000000..cbc89b2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05290.txt @@ -0,0 +1 @@ +1 0.439453125 0.2530463038180341 0.328125 0.3160032493907392 diff --git a/yolo_mindspore/dataset/mask/labels/val/05310.txt b/yolo_mindspore/dataset/mask/labels/val/05310.txt new file mode 100644 index 0000000..f962c89 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05310.txt @@ -0,0 +1 @@ +1 0.61640625 0.4635416666666667 0.1921875 0.31875 diff --git a/yolo_mindspore/dataset/mask/labels/val/05320.txt b/yolo_mindspore/dataset/mask/labels/val/05320.txt new file mode 100644 index 0000000..91da03d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05320.txt @@ -0,0 +1 @@ +1 0.5234375 0.38645833333333335 0.171875 0.2520833333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/05330.txt b/yolo_mindspore/dataset/mask/labels/val/05330.txt new file mode 100644 index 0000000..58b3a39 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05330.txt @@ -0,0 +1,3 @@ +1 0.14013671875 0.1856763925729443 0.1494140625 0.2679045092838196 +1 0.6513671875 0.15649867374005305 0.119140625 0.1909814323607427 +1 0.83251953125 0.22745358090185674 0.1416015625 0.24005305039787797 diff --git a/yolo_mindspore/dataset/mask/labels/val/05350.txt b/yolo_mindspore/dataset/mask/labels/val/05350.txt new file mode 100644 index 0000000..28ca8d9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05350.txt @@ -0,0 +1,4 @@ +1 0.34800000000000003 0.5493333333333333 0.14 0.21866666666666665 +1 0.455 0.5426666666666666 0.08600000000000001 0.17866666666666667 +1 0.5630000000000001 0.5266666666666666 0.08600000000000001 0.18933333333333333 +1 0.624 0.4066666666666667 0.116 0.19466666666666665 diff --git a/yolo_mindspore/dataset/mask/labels/val/05360.txt b/yolo_mindspore/dataset/mask/labels/val/05360.txt new file mode 100644 index 0000000..a595999 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05360.txt @@ -0,0 +1 @@ +1 0.58125 0.3302083333333333 0.1875 0.29375 diff --git a/yolo_mindspore/dataset/mask/labels/val/05370.txt b/yolo_mindspore/dataset/mask/labels/val/05370.txt new file mode 100644 index 0000000..ad56f5d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05370.txt @@ -0,0 +1,4 @@ +1 0.1943359375 0.20081967213114754 0.1953125 0.30327868852459017 +1 0.40869140625 0.40505464480874315 0.2197265625 0.48770491803278687 +1 0.609375 0.4692622950819672 0.193359375 0.5286885245901639 +1 0.8291015625 0.34972677595628415 0.251953125 0.5491803278688525 diff --git a/yolo_mindspore/dataset/mask/labels/val/05400.txt b/yolo_mindspore/dataset/mask/labels/val/05400.txt new file mode 100644 index 0000000..27a86c8 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05400.txt @@ -0,0 +1,2 @@ +1 0.2626953125 0.14454277286135692 0.1640625 0.28023598820059 +1 0.66943359375 0.2411504424778761 0.1357421875 0.23156342182890854 diff --git a/yolo_mindspore/dataset/mask/labels/val/05420.txt b/yolo_mindspore/dataset/mask/labels/val/05420.txt new file mode 100644 index 0000000..ef74928 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05420.txt @@ -0,0 +1,5 @@ +1 0.23500000000000001 0.281524926686217 0.094 0.187683284457478 +1 0.385 0.32991202346041054 0.094 0.17302052785923755 +1 0.516 0.30791788856304986 0.1 0.187683284457478 +1 0.644 0.22140762463343108 0.112 0.19648093841642228 +1 0.752 0.17302052785923755 0.10400000000000001 0.21114369501466276 diff --git a/yolo_mindspore/dataset/mask/labels/val/05430.txt b/yolo_mindspore/dataset/mask/labels/val/05430.txt new file mode 100644 index 0000000..cbb5871 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05430.txt @@ -0,0 +1 @@ +1 0.5234375 0.5010416666666666 0.21250000000000002 0.34375 diff --git a/yolo_mindspore/dataset/mask/labels/val/05440.txt b/yolo_mindspore/dataset/mask/labels/val/05440.txt new file mode 100644 index 0000000..22ad6b1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05440.txt @@ -0,0 +1 @@ +1 0.5554687500000001 0.421875 0.1953125 0.26875 diff --git a/yolo_mindspore/dataset/mask/labels/val/05460.txt b/yolo_mindspore/dataset/mask/labels/val/05460.txt new file mode 100644 index 0000000..251a1c6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05460.txt @@ -0,0 +1 @@ +1 0.46015625000000004 0.3927083333333333 0.2265625 0.3020833333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/05470.txt b/yolo_mindspore/dataset/mask/labels/val/05470.txt new file mode 100644 index 0000000..b7fd363 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05470.txt @@ -0,0 +1 @@ +1 0.4912109375 0.14778645833333331 0.29296875 0.23567708333333331 diff --git a/yolo_mindspore/dataset/mask/labels/val/05480.txt b/yolo_mindspore/dataset/mask/labels/val/05480.txt new file mode 100644 index 0000000..c87fa2b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05480.txt @@ -0,0 +1 @@ +1 0.5380859375 0.23046875 0.3125 0.22916666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/val/05510.txt b/yolo_mindspore/dataset/mask/labels/val/05510.txt new file mode 100644 index 0000000..b023fb4 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05510.txt @@ -0,0 +1,2 @@ +1 0.24951171875 0.09556962025316455 0.0986328125 0.14303797468354432 +1 0.74072265625 0.2569620253164557 0.2763671875 0.4 diff --git a/yolo_mindspore/dataset/mask/labels/val/05520.txt b/yolo_mindspore/dataset/mask/labels/val/05520.txt new file mode 100644 index 0000000..4f4f295 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05520.txt @@ -0,0 +1 @@ +1 0.462890625 0.3911516853932584 0.525390625 0.5323033707865168 diff --git a/yolo_mindspore/dataset/mask/labels/val/05530.txt b/yolo_mindspore/dataset/mask/labels/val/05530.txt new file mode 100644 index 0000000..dd8c3b0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05530.txt @@ -0,0 +1 @@ +1 0.4859375 0.33229166666666665 0.1875 0.29791666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/val/05540.txt b/yolo_mindspore/dataset/mask/labels/val/05540.txt new file mode 100644 index 0000000..f34a793 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05540.txt @@ -0,0 +1 @@ +1 0.56640625 0.3489583333333333 0.2234375 0.32708333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/val/05550.txt b/yolo_mindspore/dataset/mask/labels/val/05550.txt new file mode 100644 index 0000000..c604619 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05550.txt @@ -0,0 +1 @@ +1 0.56689453125 0.165860400829302 0.3388671875 0.2736696613683483 diff --git a/yolo_mindspore/dataset/mask/labels/val/05580.txt b/yolo_mindspore/dataset/mask/labels/val/05580.txt new file mode 100644 index 0000000..a2e1c11 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05580.txt @@ -0,0 +1 @@ +1 0.4091796875 0.3192771084337349 0.337890625 0.5153949129852744 diff --git a/yolo_mindspore/dataset/mask/labels/val/05590.txt b/yolo_mindspore/dataset/mask/labels/val/05590.txt new file mode 100644 index 0000000..f13d28b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05590.txt @@ -0,0 +1 @@ +1 0.4990234375 0.3113465481886535 0.541015625 0.5051264524948735 diff --git a/yolo_mindspore/dataset/mask/labels/val/05610.txt b/yolo_mindspore/dataset/mask/labels/val/05610.txt new file mode 100644 index 0000000..7417f7f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05610.txt @@ -0,0 +1 @@ +1 0.55 0.3645833333333333 0.19375 0.2875 diff --git a/yolo_mindspore/dataset/mask/labels/val/05620.txt b/yolo_mindspore/dataset/mask/labels/val/05620.txt new file mode 100644 index 0000000..cfd6c6c --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05620.txt @@ -0,0 +1 @@ +1 0.498046875 0.3442265795206972 0.392578125 0.38344226579520696 diff --git a/yolo_mindspore/dataset/mask/labels/val/05630.txt b/yolo_mindspore/dataset/mask/labels/val/05630.txt new file mode 100644 index 0000000..b4c3078 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05630.txt @@ -0,0 +1 @@ +1 0.585 0.216 0.074 0.12266666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/val/05680.txt b/yolo_mindspore/dataset/mask/labels/val/05680.txt new file mode 100644 index 0000000..db2d9cf --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05680.txt @@ -0,0 +1 @@ +1 0.5673828125 0.21141185076810534 0.265625 0.24140453547915144 diff --git a/yolo_mindspore/dataset/mask/labels/val/05690.txt b/yolo_mindspore/dataset/mask/labels/val/05690.txt new file mode 100644 index 0000000..41d5e4f --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05690.txt @@ -0,0 +1 @@ +1 0.46875 0.46458333333333335 0.225 0.3458333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/05700.txt b/yolo_mindspore/dataset/mask/labels/val/05700.txt new file mode 100644 index 0000000..59a109b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05700.txt @@ -0,0 +1 @@ +1 0.6261261261261262 0.17200000000000001 0.24324324324324323 0.18 diff --git a/yolo_mindspore/dataset/mask/labels/val/05710.txt b/yolo_mindspore/dataset/mask/labels/val/05710.txt new file mode 100644 index 0000000..fd664ba --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05710.txt @@ -0,0 +1 @@ +1 0.5140625 0.3385416666666667 0.16875 0.23958333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/val/05730.txt b/yolo_mindspore/dataset/mask/labels/val/05730.txt new file mode 100644 index 0000000..0b1ff52 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05730.txt @@ -0,0 +1 @@ +1 0.41015625 0.37632978723404253 0.484375 0.5895390070921985 diff --git a/yolo_mindspore/dataset/mask/labels/val/05760.txt b/yolo_mindspore/dataset/mask/labels/val/05760.txt new file mode 100644 index 0000000..88a6b4e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05760.txt @@ -0,0 +1 @@ +1 0.48974609375 0.34372652141247184 0.4892578125 0.4380165289256199 diff --git a/yolo_mindspore/dataset/mask/labels/val/05770.txt b/yolo_mindspore/dataset/mask/labels/val/05770.txt new file mode 100644 index 0000000..0e58b27 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05770.txt @@ -0,0 +1 @@ +1 0.36083984375 0.1631892697466468 0.1240234375 0.2399403874813711 diff --git a/yolo_mindspore/dataset/mask/labels/val/05780.txt b/yolo_mindspore/dataset/mask/labels/val/05780.txt new file mode 100644 index 0000000..780d4d8 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05780.txt @@ -0,0 +1 @@ +1 0.5007812500000001 0.5239583333333333 0.2265625 0.31875 diff --git a/yolo_mindspore/dataset/mask/labels/val/05790.txt b/yolo_mindspore/dataset/mask/labels/val/05790.txt new file mode 100644 index 0000000..1f0fcac --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05790.txt @@ -0,0 +1 @@ +1 0.46044921875 0.2324128862590401 0.5302734375 0.4635108481262328 diff --git a/yolo_mindspore/dataset/mask/labels/val/05840.txt b/yolo_mindspore/dataset/mask/labels/val/05840.txt new file mode 100644 index 0000000..0857839 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05840.txt @@ -0,0 +1 @@ +1 0.52578125 0.38229166666666664 0.1609375 0.22708333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/05850.txt b/yolo_mindspore/dataset/mask/labels/val/05850.txt new file mode 100644 index 0000000..7213e33 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05850.txt @@ -0,0 +1 @@ +1 0.533203125 0.3461775585696671 0.62109375 0.5258939580764488 diff --git a/yolo_mindspore/dataset/mask/labels/val/05870.txt b/yolo_mindspore/dataset/mask/labels/val/05870.txt new file mode 100644 index 0000000..8578be2 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05870.txt @@ -0,0 +1 @@ +1 0.474609375 0.3228423101881895 0.55859375 0.49383517196625565 diff --git a/yolo_mindspore/dataset/mask/labels/val/05880.txt b/yolo_mindspore/dataset/mask/labels/val/05880.txt new file mode 100644 index 0000000..bf752b5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05880.txt @@ -0,0 +1,2 @@ +1 0.1875 0.2564814814814815 0.20833333333333334 0.38333333333333336 +1 0.7854166666666667 0.3194444444444445 0.17708333333333334 0.37222222222222223 diff --git a/yolo_mindspore/dataset/mask/labels/val/05890.txt b/yolo_mindspore/dataset/mask/labels/val/05890.txt new file mode 100644 index 0000000..6d1f431 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05890.txt @@ -0,0 +1 @@ +1 0.540625 0.3833333333333333 0.19375 0.2833333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/05910.txt b/yolo_mindspore/dataset/mask/labels/val/05910.txt new file mode 100644 index 0000000..40bc758 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05910.txt @@ -0,0 +1 @@ +1 0.53125 0.30045572916666663 0.595703125 0.482421875 diff --git a/yolo_mindspore/dataset/mask/labels/val/05920.txt b/yolo_mindspore/dataset/mask/labels/val/05920.txt new file mode 100644 index 0000000..6fb9457 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05920.txt @@ -0,0 +1 @@ +1 0.4921875 0.3772391991570074 0.458984375 0.613277133825079 diff --git a/yolo_mindspore/dataset/mask/labels/val/05960.txt b/yolo_mindspore/dataset/mask/labels/val/05960.txt new file mode 100644 index 0000000..df69c0e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/05960.txt @@ -0,0 +1,2 @@ +1 0.3067708333333333 0.40185185185185185 0.19479166666666667 0.4518518518518519 +1 0.73125 0.2916666666666667 0.24166666666666667 0.5092592592592593 diff --git a/yolo_mindspore/dataset/mask/labels/val/06000.txt b/yolo_mindspore/dataset/mask/labels/val/06000.txt new file mode 100644 index 0000000..c9dba25 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06000.txt @@ -0,0 +1 @@ +1 0.43603515625 0.29876977152899825 0.4208984375 0.4586994727592267 diff --git a/yolo_mindspore/dataset/mask/labels/val/06010.txt b/yolo_mindspore/dataset/mask/labels/val/06010.txt new file mode 100644 index 0000000..6bdfe40 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06010.txt @@ -0,0 +1 @@ +1 0.5593750000000001 0.5239583333333333 0.1625 0.24375 diff --git a/yolo_mindspore/dataset/mask/labels/val/06030.txt b/yolo_mindspore/dataset/mask/labels/val/06030.txt new file mode 100644 index 0000000..be093e3 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06030.txt @@ -0,0 +1,2 @@ +1 0.50830078125 0.2524578651685393 0.3095703125 0.2928370786516854 +1 0.10595703125 0.300561797752809 0.2060546875 0.1797752808988764 diff --git a/yolo_mindspore/dataset/mask/labels/val/06050.txt b/yolo_mindspore/dataset/mask/labels/val/06050.txt new file mode 100644 index 0000000..e159ebe --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06050.txt @@ -0,0 +1 @@ +1 0.5864022662889519 0.242 0.4645892351274788 0.392 diff --git a/yolo_mindspore/dataset/mask/labels/val/06090.txt b/yolo_mindspore/dataset/mask/labels/val/06090.txt new file mode 100644 index 0000000..ebf2206 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06090.txt @@ -0,0 +1 @@ +1 0.455078125 0.2099609375 0.330078125 0.22981770833333331 diff --git a/yolo_mindspore/dataset/mask/labels/val/06110.txt b/yolo_mindspore/dataset/mask/labels/val/06110.txt new file mode 100644 index 0000000..23f8ce5 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06110.txt @@ -0,0 +1 @@ +1 0.4927083333333333 0.34074074074074073 0.18333333333333332 0.4444444444444445 diff --git a/yolo_mindspore/dataset/mask/labels/val/06120.txt b/yolo_mindspore/dataset/mask/labels/val/06120.txt new file mode 100644 index 0000000..827eb8e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06120.txt @@ -0,0 +1 @@ +1 0.6062500000000001 0.4041666666666667 0.184375 0.2833333333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/06150.txt b/yolo_mindspore/dataset/mask/labels/val/06150.txt new file mode 100644 index 0000000..522a1a0 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06150.txt @@ -0,0 +1 @@ +1 0.373046875 0.24826388888888887 0.21875 0.38888888888888884 diff --git a/yolo_mindspore/dataset/mask/labels/val/06160.txt b/yolo_mindspore/dataset/mask/labels/val/06160.txt new file mode 100644 index 0000000..1e6fa4d --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06160.txt @@ -0,0 +1 @@ +1 0.525 0.46458333333333335 0.18125000000000002 0.2375 diff --git a/yolo_mindspore/dataset/mask/labels/val/06170.txt b/yolo_mindspore/dataset/mask/labels/val/06170.txt new file mode 100644 index 0000000..92c3314 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06170.txt @@ -0,0 +1,4 @@ +1 0.1552734375 0.33421750663129973 0.16015625 0.2546419098143236 +1 0.35009765625 0.366710875331565 0.1787109375 0.22413793103448273 +1 0.6826171875 0.5 0.12109375 0.18302387267904507 +1 0.8349609375 0.24734748010610078 0.16796875 0.23209549071618035 diff --git a/yolo_mindspore/dataset/mask/labels/val/06180.txt b/yolo_mindspore/dataset/mask/labels/val/06180.txt new file mode 100644 index 0000000..2e163ac --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06180.txt @@ -0,0 +1 @@ +1 0.512 0.41876750700280113 0.356 0.6302521008403361 diff --git a/yolo_mindspore/dataset/mask/labels/val/06190.txt b/yolo_mindspore/dataset/mask/labels/val/06190.txt new file mode 100644 index 0000000..9cda0d1 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06190.txt @@ -0,0 +1 @@ +1 0.48671875000000003 0.5583333333333333 0.16718750000000002 0.2916666666666667 diff --git a/yolo_mindspore/dataset/mask/labels/val/06210.txt b/yolo_mindspore/dataset/mask/labels/val/06210.txt new file mode 100644 index 0000000..678d7fd --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06210.txt @@ -0,0 +1,2 @@ +1 0.5 0.306 0.1111111111111111 0.10400000000000001 +1 0.3333333333333333 0.431 0.0960960960960961 0.074 diff --git a/yolo_mindspore/dataset/mask/labels/val/06240.txt b/yolo_mindspore/dataset/mask/labels/val/06240.txt new file mode 100644 index 0000000..2d3db50 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06240.txt @@ -0,0 +1 @@ +1 0.50341796875 0.18315018315018314 0.3115234375 0.295970695970696 diff --git a/yolo_mindspore/dataset/mask/labels/val/06260.txt b/yolo_mindspore/dataset/mask/labels/val/06260.txt new file mode 100644 index 0000000..7905467 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06260.txt @@ -0,0 +1 @@ +1 0.52783203125 0.46354166666666663 0.5380859375 0.8880208333333333 diff --git a/yolo_mindspore/dataset/mask/labels/val/06270.txt b/yolo_mindspore/dataset/mask/labels/val/06270.txt new file mode 100644 index 0000000..b158df6 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06270.txt @@ -0,0 +1 @@ +1 0.62 0.5093333333333333 0.328 0.5066666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/val/06280.txt b/yolo_mindspore/dataset/mask/labels/val/06280.txt new file mode 100644 index 0000000..1408227 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06280.txt @@ -0,0 +1,3 @@ +1 0.19970703125 0.24342105263157893 0.1142578125 0.20614035087719296 +1 0.4150390625 0.34502923976608185 0.13671875 0.2046783625730994 +1 0.8046875 0.293859649122807 0.150390625 0.23391812865497075 diff --git a/yolo_mindspore/dataset/mask/labels/val/06290.txt b/yolo_mindspore/dataset/mask/labels/val/06290.txt new file mode 100644 index 0000000..5255918 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06290.txt @@ -0,0 +1 @@ +1 0.52587890625 0.22787318361955086 0.2255859375 0.32100396301188905 diff --git a/yolo_mindspore/dataset/mask/labels/val/06300.txt b/yolo_mindspore/dataset/mask/labels/val/06300.txt new file mode 100644 index 0000000..2320759 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06300.txt @@ -0,0 +1 @@ +1 0.58544921875 0.33088235294117646 0.2802734375 0.4852941176470588 diff --git a/yolo_mindspore/dataset/mask/labels/val/06340.txt b/yolo_mindspore/dataset/mask/labels/val/06340.txt new file mode 100644 index 0000000..32d6d2a --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06340.txt @@ -0,0 +1,2 @@ +1 0.397 0.4532085561497326 0.114 0.17379679144385027 +1 0.6910000000000001 0.4304812834224599 0.11800000000000001 0.2032085561497326 diff --git a/yolo_mindspore/dataset/mask/labels/val/06370.txt b/yolo_mindspore/dataset/mask/labels/val/06370.txt new file mode 100644 index 0000000..69b58b9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06370.txt @@ -0,0 +1 @@ +1 0.5859375 0.3104166666666667 0.178125 0.26666666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/val/06380.txt b/yolo_mindspore/dataset/mask/labels/val/06380.txt new file mode 100644 index 0000000..a6129e7 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06380.txt @@ -0,0 +1 @@ +1 0.49169921875 0.29942418426103645 0.5986328125 0.46705054382597566 diff --git a/yolo_mindspore/dataset/mask/labels/val/06390.txt b/yolo_mindspore/dataset/mask/labels/val/06390.txt new file mode 100644 index 0000000..57bc40b --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06390.txt @@ -0,0 +1 @@ +1 0.5328125 0.40729166666666666 0.209375 0.34791666666666665 diff --git a/yolo_mindspore/dataset/mask/labels/val/06400.txt b/yolo_mindspore/dataset/mask/labels/val/06400.txt new file mode 100644 index 0000000..cb4a36e --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06400.txt @@ -0,0 +1 @@ +1 0.5875 0.384375 0.15625 0.23541666666666666 diff --git a/yolo_mindspore/dataset/mask/labels/val/06430.txt b/yolo_mindspore/dataset/mask/labels/val/06430.txt new file mode 100644 index 0000000..e030ab9 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06430.txt @@ -0,0 +1 @@ +1 0.63818359375 0.3228423101881895 0.5283203125 0.4899415963659961 diff --git a/yolo_mindspore/dataset/mask/labels/val/06450.txt b/yolo_mindspore/dataset/mask/labels/val/06450.txt new file mode 100644 index 0000000..6bd4aee --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06450.txt @@ -0,0 +1 @@ +1 0.23900000000000002 0.17837078651685392 0.23800000000000002 0.3455056179775281 diff --git a/yolo_mindspore/dataset/mask/labels/val/06460.txt b/yolo_mindspore/dataset/mask/labels/val/06460.txt new file mode 100644 index 0000000..9896a61 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06460.txt @@ -0,0 +1 @@ +1 0.565625 0.359375 0.171875 0.26458333333333334 diff --git a/yolo_mindspore/dataset/mask/labels/val/06470.txt b/yolo_mindspore/dataset/mask/labels/val/06470.txt new file mode 100644 index 0000000..47cd253 --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06470.txt @@ -0,0 +1 @@ +1 0.57421875 0.276239907727797 0.291015625 0.3771626297577855 diff --git a/yolo_mindspore/dataset/mask/labels/val/06480.txt b/yolo_mindspore/dataset/mask/labels/val/06480.txt new file mode 100644 index 0000000..25b32cd --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06480.txt @@ -0,0 +1 @@ +1 0.4755859375 0.2551948051948052 0.333984375 0.274025974025974 diff --git a/yolo_mindspore/dataset/mask/labels/val/06490.txt b/yolo_mindspore/dataset/mask/labels/val/06490.txt new file mode 100644 index 0000000..c49b3af --- /dev/null +++ b/yolo_mindspore/dataset/mask/labels/val/06490.txt @@ -0,0 +1,3 @@ +1 0.182 0.44266666666666665 0.12 0.21333333333333332 +1 0.435 0.41333333333333333 0.134 0.20266666666666666 +1 0.789 0.44 0.178 0.26666666666666666 diff --git a/yolo_mindspore/default_config.yaml b/yolo_mindspore/default_config.yaml new file mode 100644 index 0000000..47d25d8 --- /dev/null +++ b/yolo_mindspore/default_config.yaml @@ -0,0 +1,176 @@ +# Builtin Configurations(DO NOT CHANGE THESE CONFIGURATIONS unless you know exactly what you are doing) +enable_modelarts: False +# Url for modelarts +data_url: "" +train_url: "" +checkpoint_url: "" +outputs_url: "" +# Path for local +data_path: "dataset" +output_path: "output/train" +load_path: "dateset/mask/images/train" +device_target: "CPU" +need_modelarts_dataset_unzip: True +modelarts_dataset_unzip_name: "coco" + +# ============================================================================== +# Train options +data_dir: "dataset" +per_batch_size: 8 +yolov5_version: "yolov5s" +pretrained_backbone: "" +resume_yolov5: "" +pretrained_checkpoint: "" +output_dir: "output/train" +train_img_dir: "dateset/mask/images/train" +train_json_file: "coco/annotations.json" + +lr_scheduler: "cosine_annealing" +lr: 0.01 +lr_epochs: "220,250" +lr_gamma: 0.1 +eta_min: 0.0 +T_max: 300 # please set 320 when run on 1p +max_epoch: 300 # please set 320 when run on 1p +warmup_epochs: 20 # please set 4 when run on 1p +weight_decay: 0.0005 +momentum: 0.9 +loss_scale: 1024 +label_smooth: 0 +label_smooth_factor: 0.1 +log_interval: 100 +ckpt_path: "outputs/" +is_distributed: 0 +bind_cpu: True +device_num: 8 +rank: 0 +group_size: 1 +need_profiler: 0 +resize_rate: 10 +filter_weight: False + +# Eval options +pretrained: "" +log_path: "outputs/" +ann_val_file: "" +eval_nms_thresh: 0.6 +ignore_threshold: 0.7 +test_ignore_threshold: 0.001 +multi_label: True +multi_label_thresh: 0.1 + +# Export options +device_id: 0 +batch_size: 1 +testing_shape: [640, 640] +ckpt_file: "" +file_name: "yolov5" +file_format: "MINDIR" +dataset_path: "" +ann_file: "" + + +# Other default config +hue: 0.015 +saturation: 1.5 +value: 0.4 +jitter: 0.3 + +num_classes: 80 +max_box: 150 +checkpoint_filter_list: ['feature_map.back_block1.conv.weight', 'feature_map.back_block1.conv.bias', + 'feature_map.back_block2.conv.weight', 'feature_map.back_block2.conv.bias', + 'feature_map.back_block3.conv.weight', 'feature_map.back_block3.conv.bias'] + +# h->w +anchor_scales: [[12, 16], + [19, 36], + [40, 28], + [36, 75], + [76, 55], + [72, 146], + [142, 110], + [192, 243], + [459, 401]] + +out_channel: 255 # 3 * (num_classes + 5) + +input_shape: [[3, 32, 64, 128, 256, 512, 1], + [3, 48, 96, 192, 384, 768, 2], + [3, 64, 128, 256, 512, 1024, 3], + [3, 80, 160, 320, 640, 1280, 4]] + +# test_param +test_img_shape: [640, 640] + +labels: [ 'person', 'with_mask', 'no_mask', 'motorcycle', 'airplane', 'bus', 'train', 'truck', 'boat', + 'traffic light', 'fire hydrant', 'stop sign', 'parking meter', 'bench', 'bird', 'cat', + 'dog', 'horse', 'sheep', 'cow', 'elephant', 'bear', 'zebra', 'giraffe', 'backpack', + 'umbrella', 'handbag', 'tie', 'suitcase', 'frisbee', 'skis', 'snowboard', 'sports ball', + 'kite', 'baseball bat', 'baseball glove', 'skateboard', 'surfboard', 'tennis racket', + 'bottle', 'wine glass', 'cup', 'fork', 'knife', 'spoon', 'bowl', 'banana', 'apple', + 'sandwich', 'orange', 'broccoli', 'carrot', 'hot dog', 'pizza', 'donut', 'cake', 'chair', + 'couch', 'potted plant', 'bed', 'dining table', 'toilet', 'tv', 'laptop', 'mouse', 'remote', + 'keyboard', 'cell phone', 'microwave', 'oven', 'toaster', 'sink', 'refrigerator', 'book', + 'clock', 'vase', 'scissors', 'teddy bear', 'hair drier', 'toothbrush' ] + + +coco_ids: [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 27, + 28, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 47, 48, 49, 50, 51, 52, 53, + 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 67, 70, 72, 73, 74, 75, 76, 77, 78, 79, 80, + 81, 82, 84, 85, 86, 87, 88, 89, 90 ] + +result_files: './result_Files' + +--- + +# Help description for each configuration +# Train options +data_dir: "Train dataset directory." +per_batch_size: "Batch size for Training." +pretrained_backbone: "The ckpt file of CspDarkNet53." +resume_yolov5: "The ckpt file of YOLOv5, which used to fine tune." +pretrained_checkpoint: "The ckpt file of YOLOv5CspDarkNet53." +lr_scheduler: "Learning rate scheduler, options: exponential, cosine_annealing." +lr: "Learning rate." +lr_epochs: "Epoch of changing of lr changing, split with ','." +lr_gamma: "Decrease lr by a factor of exponential lr_scheduler." +eta_min: "Eta_min in cosine_annealing scheduler." +T_max: "T-max in cosine_annealing scheduler." +max_epoch: "Max epoch num to train the model." +warmup_epochs: "Warmup epochs." +weight_decay: "Weight decay factor." +momentum: "Momentum." +loss_scale: "Static loss scale." +label_smooth: "Whether to use label smooth in CE." +label_smooth_factor: "Smooth strength of original one-hot." +log_interval: "Logging interval steps." +ckpt_path: "Checkpoint save location." +ckpt_interval: "Save checkpoint interval." +is_save_on_master: "Save ckpt on master or all rank, 1 for master, 0 for all ranks." +is_distributed: "Distribute train or not, 1 for yes, 0 for no." +bind_cpu: "Whether bind cpu when distributed training." +device_num: "Device numbers per server" +rank: "Local rank of distributed." +group_size: "World size of device." +need_profiler: "Whether use profiler. 0 for no, 1 for yes." +resize_rate: "Resize rate for multi-scale training." +ann_file: "path to annotation" +each_multiscale: "Apply multi-scale for each scale" +labels: "the label of train data" +multi_label: "use multi label to nms" +multi_label_thresh: "multi label thresh" + +# Eval options +pretrained: "model_path, local pretrained model to load" +log_path: "checkpoint save location" +ann_val_file: "path to annotation" + +# Export options +device_id: "Device id for export" +batch_size: "batch size for export" +testing_shape: "shape for test" +ckpt_file: "Checkpoint file path for export" +file_name: "output file name for export" +file_format: "file format for export" +result_files: 'path to 310 infer result floder' diff --git a/yolo_mindspore/eval.py b/yolo_mindspore/eval.py new file mode 100644 index 0000000..15279d3 --- /dev/null +++ b/yolo_mindspore/eval.py @@ -0,0 +1,115 @@ +# Copyright 2021 Huawei Technologies Co., Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================ +"""YoloV5 eval.""" +import os +import time + +import numpy as np + +import mindspore as ms + +from src.yolo import YOLOV5 +from src.logger import get_logger +from src.util import DetectionEngine +from src.yolo_dataset import create_yolo_dataset + +from model_utils.config import config + +# only useful for huawei cloud modelarts +from model_utils.moxing_adapter import moxing_wrapper, modelarts_pre_process + + +def eval_preprocess(): + config.data_root = os.path.join(config.data_dir, 'dataset/inference') + config.ann_file = os.path.join(config.data_dir, 'coco/annotations.json') + device_id = int(os.getenv('DEVICE_ID', '0')) + ms.set_context(mode=ms.GRAPH_MODE, device_target=config.device_target, device_id=device_id) + + # logger module is managed by config, it is used in other function. e.x. config.logger.info("xxx") + config.logger = get_logger(config.output_dir, device_id) + + +def load_parameters(network, filename): + config.logger.info("yolov5 pretrained network model: %s", filename) + param_dict = ms.load_checkpoint(filename) + param_dict_new = {} + for key, values in param_dict.items(): + if key.startswith('moments.'): + continue + elif key.startswith('yolo_network.'): + param_dict_new[key[13:]] = values + else: + param_dict_new[key] = values + ms.load_param_into_net(network, param_dict_new) + config.logger.info('load_model %s success', filename) + + +@moxing_wrapper(pre_process=modelarts_pre_process, pre_args=[config]) +def run_eval(): + eval_preprocess() + start_time = time.time() + config.logger.info('Creating Network....') + dict_version = {'yolov5s': 0, 'yolov5m': 1, 'yolov5l': 2, 'yolov5x': 3} + network = YOLOV5(is_training=False, version=dict_version[config.yolov5_version]) + + if os.path.isfile(config.pretrained): + load_parameters(network, config.pretrained) + else: + raise FileNotFoundError(f"{config.pretrained} is not a filename.") + + ds = create_yolo_dataset(config.data_root, config.ann_file, is_training=False, batch_size=config.per_batch_size, + device_num=1, rank=0, shuffle=False, config=config) + + config.logger.info('testing shape : %s', config.test_img_shape) + config.logger.info('total %d images to eval', ds.get_dataset_size() * config.per_batch_size) + + network.set_train(False) + + # init detection engine + detection = DetectionEngine(config, config.test_ignore_threshold) + + input_shape = ms.Tensor(tuple(config.test_img_shape), ms.float32) + config.logger.info('Start inference....') + for index, data in enumerate(ds.create_dict_iterator(output_numpy=True, num_epochs=1)): + image = data["image"] + # adapt network shape of input data + image = np.concatenate((image[..., ::2, ::2], image[..., 1::2, ::2], + image[..., ::2, 1::2], image[..., 1::2, 1::2]), axis=1) + image = ms.Tensor(image) + image_shape_ = data["image_shape"] + image_id_ = data["img_id"] + output_big, output_me, output_small = network(image, input_shape) + output_big = output_big.asnumpy() + output_me = output_me.asnumpy() + output_small = output_small.asnumpy() + detection.detect([output_small, output_me, output_big], config.per_batch_size, image_shape_, image_id_) + + if index % 50 == 0: + config.logger.info('Processing... {:.2f}% '.format(index / ds.get_dataset_size() * 100)) + + config.logger.info('Calculating mAP...') + detection.do_nms_for_results() + result_file_path = detection.write_result() + config.logger.info('result file path: %s', result_file_path) + eval_result = detection.get_eval_result() + + cost_time = time.time() - start_time + eval_log_string = '\n=============coco eval result=========\n' + eval_result + config.logger.info(eval_log_string) + config.logger.info('testing cost time %.2f h', cost_time / 3600.) + + +if __name__ == "__main__": + run_eval() diff --git a/yolov5/eval_onnx.py b/yolo_mindspore/eval_onnx.py similarity index 100% rename from yolov5/eval_onnx.py rename to yolo_mindspore/eval_onnx.py diff --git a/yolo_mindspore/export.py b/yolo_mindspore/export.py new file mode 100644 index 0000000..68aa8af --- /dev/null +++ b/yolo_mindspore/export.py @@ -0,0 +1,45 @@ +# Copyright 2022 Huawei Technologies Co., Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================ +import mindspore as ms + +from src.yolo import YOLOV5s_Infer + +from model_utils.config import config +from model_utils.moxing_adapter import moxing_wrapper, modelarts_export_preprocess + + +@moxing_wrapper(pre_process=modelarts_export_preprocess, pre_args=[config]) +def run_export(): + ms.set_context(mode=ms.GRAPH_MODE, device_target=config.device_target) + if config.device_target == "Ascend": + ms.set_context(device_id=config.device_id) + + dict_version = {'yolov5s': 0, 'yolov5m': 1, 'yolov5l': 2, 'yolov5x': 3} + config.file_name = config.file_name + '_' + config.yolov5_version + + network = YOLOV5s_Infer(config.testing_shape[0], version=dict_version[config.yolov5_version]) + network.set_train(False) + + param_dict = ms.load_checkpoint(config.ckpt_file) + ms.load_param_into_net(network, param_dict) + + ts = config.testing_shape[0] // 2 + input_data = ms.numpy.zeros([config.batch_size, 12, ts, ts], ms.float32) + + ms.export(network, input_data, file_name=config.file_name, file_format=config.file_format) + print('==========success export===============') + +if __name__ == "__main__": + run_export() diff --git a/yolov5/infer/Dockerfile b/yolo_mindspore/infer/Dockerfile similarity index 100% rename from yolov5/infer/Dockerfile rename to yolo_mindspore/infer/Dockerfile diff --git a/yolov5/infer/convert/atc_model_convert.sh b/yolo_mindspore/infer/convert/atc_model_convert.sh similarity index 100% rename from yolov5/infer/convert/atc_model_convert.sh rename to yolo_mindspore/infer/convert/atc_model_convert.sh diff --git a/yolov5/infer/data/models/yolov5.cfg b/yolo_mindspore/infer/data/models/yolov5.cfg similarity index 100% rename from yolov5/infer/data/models/yolov5.cfg rename to yolo_mindspore/infer/data/models/yolov5.cfg diff --git a/yolov5/infer/docker_start_infer.sh b/yolo_mindspore/infer/docker_start_infer.sh similarity index 100% rename from yolov5/infer/docker_start_infer.sh rename to yolo_mindspore/infer/docker_start_infer.sh diff --git a/yolov5/infer/mxbase/CMakeLists.txt b/yolo_mindspore/infer/mxbase/CMakeLists.txt similarity index 100% rename from yolov5/infer/mxbase/CMakeLists.txt rename to yolo_mindspore/infer/mxbase/CMakeLists.txt diff --git a/yolov5/infer/mxbase/build.sh b/yolo_mindspore/infer/mxbase/build.sh similarity index 100% rename from yolov5/infer/mxbase/build.sh rename to yolo_mindspore/infer/mxbase/build.sh diff --git a/yolov5/infer/mxbase/src/PostProcess/Yolov5MindSporePost.cpp b/yolo_mindspore/infer/mxbase/src/PostProcess/Yolov5MindSporePost.cpp similarity index 100% rename from yolov5/infer/mxbase/src/PostProcess/Yolov5MindSporePost.cpp rename to yolo_mindspore/infer/mxbase/src/PostProcess/Yolov5MindSporePost.cpp diff --git a/yolov5/infer/mxbase/src/PostProcess/Yolov5MindSporePost.h b/yolo_mindspore/infer/mxbase/src/PostProcess/Yolov5MindSporePost.h similarity index 100% rename from yolov5/infer/mxbase/src/PostProcess/Yolov5MindSporePost.h rename to yolo_mindspore/infer/mxbase/src/PostProcess/Yolov5MindSporePost.h diff --git a/yolov5/infer/mxbase/src/Yolov5Detection.cpp b/yolo_mindspore/infer/mxbase/src/Yolov5Detection.cpp similarity index 100% rename from yolov5/infer/mxbase/src/Yolov5Detection.cpp rename to yolo_mindspore/infer/mxbase/src/Yolov5Detection.cpp diff --git a/yolov5/infer/mxbase/src/Yolov5Detection.h b/yolo_mindspore/infer/mxbase/src/Yolov5Detection.h similarity index 100% rename from yolov5/infer/mxbase/src/Yolov5Detection.h rename to yolo_mindspore/infer/mxbase/src/Yolov5Detection.h diff --git a/yolov5/infer/mxbase/src/main.cpp b/yolo_mindspore/infer/mxbase/src/main.cpp similarity index 100% rename from yolov5/infer/mxbase/src/main.cpp rename to yolo_mindspore/infer/mxbase/src/main.cpp diff --git a/yolov5/infer/requirements.txt b/yolo_mindspore/infer/requirements.txt similarity index 100% rename from yolov5/infer/requirements.txt rename to yolo_mindspore/infer/requirements.txt diff --git a/yolov5/infer/sdk/api/infer.py b/yolo_mindspore/infer/sdk/api/infer.py similarity index 100% rename from yolov5/infer/sdk/api/infer.py rename to yolo_mindspore/infer/sdk/api/infer.py diff --git a/yolov5/infer/sdk/api/postprocess.py b/yolo_mindspore/infer/sdk/api/postprocess.py similarity index 100% rename from yolov5/infer/sdk/api/postprocess.py rename to yolo_mindspore/infer/sdk/api/postprocess.py diff --git a/yolov5/infer/sdk/config/config.py b/yolo_mindspore/infer/sdk/config/config.py similarity index 100% rename from yolov5/infer/sdk/config/config.py rename to yolo_mindspore/infer/sdk/config/config.py diff --git a/yolov5/infer/sdk/config/yolov5.pipeline b/yolo_mindspore/infer/sdk/config/yolov5.pipeline similarity index 100% rename from yolov5/infer/sdk/config/yolov5.pipeline rename to yolo_mindspore/infer/sdk/config/yolov5.pipeline diff --git a/yolov5/infer/sdk/eval/eval_by_sdk.py b/yolo_mindspore/infer/sdk/eval/eval_by_sdk.py similarity index 100% rename from yolov5/infer/sdk/eval/eval_by_sdk.py rename to yolo_mindspore/infer/sdk/eval/eval_by_sdk.py diff --git a/yolov5/infer/sdk/main.py b/yolo_mindspore/infer/sdk/main.py similarity index 100% rename from yolov5/infer/sdk/main.py rename to yolo_mindspore/infer/sdk/main.py diff --git a/yolov5/infer/sdk/run.sh b/yolo_mindspore/infer/sdk/run.sh similarity index 100% rename from yolov5/infer/sdk/run.sh rename to yolo_mindspore/infer/sdk/run.sh diff --git a/yolo_mindspore/log.txt b/yolo_mindspore/log.txt new file mode 100644 index 0000000..15d6afc Binary files /dev/null and b/yolo_mindspore/log.txt differ diff --git a/yolov5/mindspore_hub_conf.py b/yolo_mindspore/mindspore_hub_conf.py similarity index 100% rename from yolov5/mindspore_hub_conf.py rename to yolo_mindspore/mindspore_hub_conf.py diff --git a/yolo_mindspore/model_utils/__init__.py b/yolo_mindspore/model_utils/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/yolo_mindspore/model_utils/__pycache__/__init__.cpython-38.pyc b/yolo_mindspore/model_utils/__pycache__/__init__.cpython-38.pyc new file mode 100644 index 0000000..ddc6db5 Binary files /dev/null and b/yolo_mindspore/model_utils/__pycache__/__init__.cpython-38.pyc differ diff --git a/yolo_mindspore/model_utils/__pycache__/config.cpython-38.pyc b/yolo_mindspore/model_utils/__pycache__/config.cpython-38.pyc new file mode 100644 index 0000000..87e4918 Binary files /dev/null and b/yolo_mindspore/model_utils/__pycache__/config.cpython-38.pyc differ diff --git a/yolo_mindspore/model_utils/__pycache__/device_adapter.cpython-38.pyc b/yolo_mindspore/model_utils/__pycache__/device_adapter.cpython-38.pyc new file mode 100644 index 0000000..e62ed33 Binary files /dev/null and b/yolo_mindspore/model_utils/__pycache__/device_adapter.cpython-38.pyc differ diff --git a/yolo_mindspore/model_utils/__pycache__/local_adapter.cpython-38.pyc b/yolo_mindspore/model_utils/__pycache__/local_adapter.cpython-38.pyc new file mode 100644 index 0000000..6d4e32d Binary files /dev/null and b/yolo_mindspore/model_utils/__pycache__/local_adapter.cpython-38.pyc differ diff --git a/yolo_mindspore/model_utils/__pycache__/moxing_adapter.cpython-38.pyc b/yolo_mindspore/model_utils/__pycache__/moxing_adapter.cpython-38.pyc new file mode 100644 index 0000000..6cd145a Binary files /dev/null and b/yolo_mindspore/model_utils/__pycache__/moxing_adapter.cpython-38.pyc differ diff --git a/yolo_mindspore/model_utils/config.py b/yolo_mindspore/model_utils/config.py new file mode 100644 index 0000000..e577086 --- /dev/null +++ b/yolo_mindspore/model_utils/config.py @@ -0,0 +1,128 @@ +# Copyright 2021 Huawei Technologies Co., Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================ + +"""Parse arguments""" + +import os +import ast +import argparse +from pprint import pformat +from cv2 import DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS +import yaml + +class Config: + """ + Configuration namespace. Convert dictionary to members. + """ + #data_dir="" + def __init__(self, cfg_dict): + for k, v in cfg_dict.items(): + if isinstance(v, (list, tuple)): + setattr(self, k, [Config(x) if isinstance(x, dict) else x for x in v]) + else: + setattr(self, k, Config(v) if isinstance(v, dict) else v) + + def __str__(self): + return pformat(self.__dict__) + + def __repr__(self): + return self.__str__() + + +def parse_cli_to_yaml(parser, cfg, helper=None, choices=None, cfg_path="default_config.yaml"): + """ + Parse command line arguments to the configuration according to the default yaml. + + Args: + parser: Parent parser. + cfg: Base configuration. + helper: Helper description. + cfg_path: Path to the default yaml config. + """ + parser = argparse.ArgumentParser(description="[REPLACE THIS at config.py]", + parents=[parser]) + helper = {} if helper is None else helper + choices = {} if choices is None else choices + for item in cfg: + if not isinstance(cfg[item], list) and not isinstance(cfg[item], dict): + help_description = helper[item] if item in helper else "Please reference to {}".format(cfg_path) + choice = choices[item] if item in choices else None + if isinstance(cfg[item], bool): + parser.add_argument("--" + item, type=ast.literal_eval, default=cfg[item], choices=choice, + help=help_description) + else: + parser.add_argument("--" + item, type=type(cfg[item]), default=cfg[item], choices=choice, + help=help_description) + args = parser.parse_args() + return args + + +def parse_yaml(yaml_path): + """ + Parse the yaml config file. + + Args: + yaml_path: Path to the yaml config. + """ + with open(yaml_path, 'r') as fin: + try: + cfgs = yaml.load_all(fin.read(), Loader=yaml.FullLoader) + cfgs = [x for x in cfgs] + if len(cfgs) == 1: + cfg_helper = {} + cfg = cfgs[0] + cfg_choices = {} + elif len(cfgs) == 2: + cfg, cfg_helper = cfgs + cfg_choices = {} + elif len(cfgs) == 3: + cfg, cfg_helper, cfg_choices = cfgs + else: + raise ValueError("At most 3 docs (config, description for help, choices) are supported in config yaml") + print(cfg_helper) + except: + raise ValueError("Failed to parse yaml") + return cfg, cfg_helper, cfg_choices + + +def merge(args, cfg): + """ + Merge the base config from yaml file and command line arguments. + + Args: + args: Command line arguments. + cfg: Base configuration. + """ + args_var = vars(args) + for item in args_var: + cfg[item] = args_var[item] + return cfg + + +def get_config(): + """ + Get Config according to the yaml file and cli arguments. + """ + parser = argparse.ArgumentParser(description="default name", add_help=False) + current_dir = os.path.dirname(os.path.abspath(__file__)) + parser.add_argument("--config_path", type=str, default=os.path.join(current_dir, "../default_config.yaml"), + help="Config file path") + path_args, _ = parser.parse_known_args() + default, helper, choices = parse_yaml(path_args.config_path) + args = parse_cli_to_yaml(parser=parser, cfg=default, helper=helper, choices=choices, cfg_path=path_args.config_path) + final_config = merge(args, default) + return Config(final_config) + +config = get_config() diff --git a/yolov5/model_utils/device_adapter.py b/yolo_mindspore/model_utils/device_adapter.py similarity index 100% rename from yolov5/model_utils/device_adapter.py rename to yolo_mindspore/model_utils/device_adapter.py diff --git a/yolov5/model_utils/local_adapter.py b/yolo_mindspore/model_utils/local_adapter.py similarity index 100% rename from yolov5/model_utils/local_adapter.py rename to yolo_mindspore/model_utils/local_adapter.py diff --git a/yolov5/model_utils/moxing_adapter.py b/yolo_mindspore/model_utils/moxing_adapter.py similarity index 100% rename from yolov5/model_utils/moxing_adapter.py rename to yolo_mindspore/model_utils/moxing_adapter.py diff --git a/yolov5/modelarts/train_start.py b/yolo_mindspore/modelarts/train_start.py similarity index 100% rename from yolov5/modelarts/train_start.py rename to yolo_mindspore/modelarts/train_start.py diff --git a/yolo_mindspore/output/train/2022-10-16_time_10_57_09_rank_0.log b/yolo_mindspore/output/train/2022-10-16_time_10_57_09_rank_0.log new file mode 100644 index 0000000..295453c --- /dev/null +++ b/yolo_mindspore/output/train/2022-10-16_time_10_57_09_rank_0.log @@ -0,0 +1,79 @@ +2022-10-16 10:57:09,429:INFO:Args: +2022-10-16 10:57:09,429:INFO:--> enable_modelarts: False +2022-10-16 10:57:09,429:INFO:--> data_url: +2022-10-16 10:57:09,429:INFO:--> train_url: +2022-10-16 10:57:09,429:INFO:--> checkpoint_url: +2022-10-16 10:57:09,429:INFO:--> outputs_url: +2022-10-16 10:57:09,429:INFO:--> data_path: /dataset +2022-10-16 10:57:09,429:INFO:--> output_path: /output/train +2022-10-16 10:57:09,430:INFO:--> load_path: /dateset/mask/images/train +2022-10-16 10:57:09,430:INFO:--> device_target: CPU +2022-10-16 10:57:09,430:INFO:--> need_modelarts_dataset_unzip: True +2022-10-16 10:57:09,430:INFO:--> modelarts_dataset_unzip_name: coco +2022-10-16 10:57:09,430:INFO:--> data_dir: xxx/dataset +2022-10-16 10:57:09,432:INFO:--> per_batch_size: 8 +2022-10-16 10:57:09,432:INFO:--> yolov5_version: yolov5s +2022-10-16 10:57:09,432:INFO:--> pretrained_backbone: +2022-10-16 10:57:09,432:INFO:--> resume_yolov5: +2022-10-16 10:57:09,432:INFO:--> pretrained_checkpoint: +2022-10-16 10:57:09,432:INFO:--> output_dir: ./output/train +2022-10-16 10:57:09,432:INFO:--> train_img_dir: /dateset/mask/images/train +2022-10-16 10:57:09,432:INFO:--> train_json_file: coco/annotations.json +2022-10-16 10:57:09,432:INFO:--> lr_scheduler: cosine_annealing +2022-10-16 10:57:09,432:INFO:--> lr: 0.01 +2022-10-16 10:57:09,432:INFO:--> lr_epochs: [220, 250] +2022-10-16 10:57:09,432:INFO:--> lr_gamma: 0.1 +2022-10-16 10:57:09,432:INFO:--> eta_min: 0.0 +2022-10-16 10:57:09,432:INFO:--> T_max: 320 +2022-10-16 10:57:09,432:INFO:--> max_epoch: 320 +2022-10-16 10:57:09,432:INFO:--> warmup_epochs: 4 +2022-10-16 10:57:09,433:INFO:--> weight_decay: 0.0005 +2022-10-16 10:57:09,433:INFO:--> momentum: 0.9 +2022-10-16 10:57:09,433:INFO:--> loss_scale: 1024 +2022-10-16 10:57:09,433:INFO:--> label_smooth: 0 +2022-10-16 10:57:09,433:INFO:--> label_smooth_factor: 0.1 +2022-10-16 10:57:09,433:INFO:--> log_interval: 100 +2022-10-16 10:57:09,433:INFO:--> ckpt_path: outputs/ +2022-10-16 10:57:09,433:INFO:--> is_distributed: 0 +2022-10-16 10:57:09,433:INFO:--> bind_cpu: True +2022-10-16 10:57:09,433:INFO:--> device_num: 8 +2022-10-16 10:57:09,433:INFO:--> rank: 0 +2022-10-16 10:57:09,433:INFO:--> group_size: 1 +2022-10-16 10:57:09,433:INFO:--> need_profiler: 0 +2022-10-16 10:57:09,433:INFO:--> resize_rate: 10 +2022-10-16 10:57:09,433:INFO:--> filter_weight: False +2022-10-16 10:57:09,433:INFO:--> pretrained: +2022-10-16 10:57:09,434:INFO:--> log_path: outputs/ +2022-10-16 10:57:09,434:INFO:--> ann_val_file: +2022-10-16 10:57:09,434:INFO:--> eval_nms_thresh: 0.6 +2022-10-16 10:57:09,434:INFO:--> ignore_threshold: 0.7 +2022-10-16 10:57:09,434:INFO:--> test_ignore_threshold: 0.001 +2022-10-16 10:57:09,434:INFO:--> multi_label: True +2022-10-16 10:57:09,434:INFO:--> multi_label_thresh: 0.1 +2022-10-16 10:57:09,434:INFO:--> device_id: 0 +2022-10-16 10:57:09,434:INFO:--> batch_size: 1 +2022-10-16 10:57:09,434:INFO:--> testing_shape: [640, 640] +2022-10-16 10:57:09,434:INFO:--> ckpt_file: +2022-10-16 10:57:09,434:INFO:--> file_name: yolov5 +2022-10-16 10:57:09,434:INFO:--> file_format: MINDIR +2022-10-16 10:57:09,434:INFO:--> dataset_path: +2022-10-16 10:57:09,434:INFO:--> ann_file: +2022-10-16 10:57:09,434:INFO:--> hue: 0.015 +2022-10-16 10:57:09,434:INFO:--> saturation: 1.5 +2022-10-16 10:57:09,435:INFO:--> value: 0.4 +2022-10-16 10:57:09,435:INFO:--> jitter: 0.3 +2022-10-16 10:57:09,435:INFO:--> num_classes: 80 +2022-10-16 10:57:09,435:INFO:--> max_box: 150 +2022-10-16 10:57:09,435:INFO:--> checkpoint_filter_list: ['feature_map.back_block1.conv.weight', 'feature_map.back_block1.conv.bias', 'feature_map.back_block2.conv.weight', 'feature_map.back_block2.conv.bias', 'feature_map.back_block3.conv.weight', 'feature_map.back_block3.conv.bias'] +2022-10-16 10:57:09,435:INFO:--> anchor_scales: [[12, 16], [19, 36], [40, 28], [36, 75], [76, 55], [72, 146], [142, 110], [192, 243], [459, 401]] +2022-10-16 10:57:09,435:INFO:--> out_channel: 255 +2022-10-16 10:57:09,435:INFO:--> input_shape: [[3, 32, 64, 128, 256, 512, 1], [3, 48, 96, 192, 384, 768, 2], [3, 64, 128, 256, 512, 1024, 3], [3, 80, 160, 320, 640, 1280, 4]] +2022-10-16 10:57:09,435:INFO:--> test_img_shape: [640, 640] +2022-10-16 10:57:09,435:INFO:--> labels: ['person', 'bicycle', 'car', 'motorcycle', 'airplane', 'bus', 'train', 'truck', 'boat', 'traffic light', 'fire hydrant', 'stop sign', 'parking meter', 'bench', 'bird', 'cat', 'dog', 'horse', 'sheep', 'cow', 'elephant', 'bear', 'zebra', 'giraffe', 'backpack', 'umbrella', 'handbag', 'tie', 'suitcase', 'frisbee', 'skis', 'snowboard', 'sports ball', 'kite', 'baseball bat', 'baseball glove', 'skateboard', 'surfboard', 'tennis racket', 'bottle', 'wine glass', 'cup', 'fork', 'knife', 'spoon', 'bowl', 'banana', 'apple', 'sandwich', 'orange', 'broccoli', 'carrot', 'hot dog', 'pizza', 'donut', 'cake', 'chair', 'couch', 'potted plant', 'bed', 'dining table', 'toilet', 'tv', 'laptop', 'mouse', 'remote', 'keyboard', 'cell phone', 'microwave', 'oven', 'toaster', 'sink', 'refrigerator', 'book', 'clock', 'vase', 'scissors', 'teddy bear', 'hair drier', 'toothbrush'] +2022-10-16 10:57:09,435:INFO:--> coco_ids: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 27, 28, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 67, 70, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 84, 85, 86, 87, 88, 89, 90] +2022-10-16 10:57:09,435:INFO:--> result_files: ./result_Files +2022-10-16 10:57:09,435:INFO:--> config_path: E:\AI_program\yolo\yolov5\model_utils\../default_config.yaml +2022-10-16 10:57:09,435:INFO:--> data_root: xxx/dataset\train2017 +2022-10-16 10:57:09,435:INFO:--> annFile: xxx/dataset\annotations/instances_train2017.json +2022-10-16 10:57:09,436:INFO:--> logger: +2022-10-16 10:57:09,436:INFO: diff --git a/yolo_mindspore/output/train/2022-10-16_time_10_57_41_rank_0.log b/yolo_mindspore/output/train/2022-10-16_time_10_57_41_rank_0.log new file mode 100644 index 0000000..047d709 --- /dev/null +++ b/yolo_mindspore/output/train/2022-10-16_time_10_57_41_rank_0.log @@ -0,0 +1,79 @@ +2022-10-16 10:57:41,841:INFO:Args: +2022-10-16 10:57:41,841:INFO:--> enable_modelarts: False +2022-10-16 10:57:41,841:INFO:--> data_url: +2022-10-16 10:57:41,841:INFO:--> train_url: +2022-10-16 10:57:41,841:INFO:--> checkpoint_url: +2022-10-16 10:57:41,841:INFO:--> outputs_url: +2022-10-16 10:57:41,841:INFO:--> data_path: /dataset +2022-10-16 10:57:41,841:INFO:--> output_path: /output/train +2022-10-16 10:57:41,841:INFO:--> load_path: /dateset/mask/images/train +2022-10-16 10:57:41,841:INFO:--> device_target: CPU +2022-10-16 10:57:41,842:INFO:--> need_modelarts_dataset_unzip: True +2022-10-16 10:57:41,842:INFO:--> modelarts_dataset_unzip_name: coco +2022-10-16 10:57:41,842:INFO:--> data_dir: xxx/dataset +2022-10-16 10:57:41,842:INFO:--> per_batch_size: 8 +2022-10-16 10:57:41,842:INFO:--> yolov5_version: yolov5s +2022-10-16 10:57:41,843:INFO:--> pretrained_backbone: +2022-10-16 10:57:41,843:INFO:--> resume_yolov5: +2022-10-16 10:57:41,843:INFO:--> pretrained_checkpoint: +2022-10-16 10:57:41,843:INFO:--> output_dir: ./output/train +2022-10-16 10:57:41,843:INFO:--> train_img_dir: /dateset/mask/images/train +2022-10-16 10:57:41,843:INFO:--> train_json_file: coco/annotations.json +2022-10-16 10:57:41,843:INFO:--> lr_scheduler: cosine_annealing +2022-10-16 10:57:41,843:INFO:--> lr: 0.01 +2022-10-16 10:57:41,843:INFO:--> lr_epochs: [220, 250] +2022-10-16 10:57:41,843:INFO:--> lr_gamma: 0.1 +2022-10-16 10:57:41,844:INFO:--> eta_min: 0.0 +2022-10-16 10:57:41,844:INFO:--> T_max: 320 +2022-10-16 10:57:41,844:INFO:--> max_epoch: 320 +2022-10-16 10:57:41,844:INFO:--> warmup_epochs: 4 +2022-10-16 10:57:41,844:INFO:--> weight_decay: 0.0005 +2022-10-16 10:57:41,844:INFO:--> momentum: 0.9 +2022-10-16 10:57:41,844:INFO:--> loss_scale: 1024 +2022-10-16 10:57:41,844:INFO:--> label_smooth: 0 +2022-10-16 10:57:41,844:INFO:--> label_smooth_factor: 0.1 +2022-10-16 10:57:41,844:INFO:--> log_interval: 100 +2022-10-16 10:57:41,844:INFO:--> ckpt_path: outputs/ +2022-10-16 10:57:41,844:INFO:--> is_distributed: 0 +2022-10-16 10:57:41,844:INFO:--> bind_cpu: True +2022-10-16 10:57:41,844:INFO:--> device_num: 8 +2022-10-16 10:57:41,844:INFO:--> rank: 0 +2022-10-16 10:57:41,845:INFO:--> group_size: 1 +2022-10-16 10:57:41,845:INFO:--> need_profiler: 0 +2022-10-16 10:57:41,845:INFO:--> resize_rate: 10 +2022-10-16 10:57:41,845:INFO:--> filter_weight: False +2022-10-16 10:57:41,845:INFO:--> pretrained: +2022-10-16 10:57:41,845:INFO:--> log_path: outputs/ +2022-10-16 10:57:41,845:INFO:--> ann_val_file: +2022-10-16 10:57:41,845:INFO:--> eval_nms_thresh: 0.6 +2022-10-16 10:57:41,845:INFO:--> ignore_threshold: 0.7 +2022-10-16 10:57:41,845:INFO:--> test_ignore_threshold: 0.001 +2022-10-16 10:57:41,845:INFO:--> multi_label: True +2022-10-16 10:57:41,845:INFO:--> multi_label_thresh: 0.1 +2022-10-16 10:57:41,846:INFO:--> device_id: 0 +2022-10-16 10:57:41,846:INFO:--> batch_size: 1 +2022-10-16 10:57:41,846:INFO:--> testing_shape: [640, 640] +2022-10-16 10:57:41,846:INFO:--> ckpt_file: +2022-10-16 10:57:41,846:INFO:--> file_name: yolov5 +2022-10-16 10:57:41,846:INFO:--> file_format: MINDIR +2022-10-16 10:57:41,846:INFO:--> dataset_path: +2022-10-16 10:57:41,846:INFO:--> ann_file: +2022-10-16 10:57:41,846:INFO:--> hue: 0.015 +2022-10-16 10:57:41,846:INFO:--> saturation: 1.5 +2022-10-16 10:57:41,846:INFO:--> value: 0.4 +2022-10-16 10:57:41,846:INFO:--> jitter: 0.3 +2022-10-16 10:57:41,846:INFO:--> num_classes: 80 +2022-10-16 10:57:41,846:INFO:--> max_box: 150 +2022-10-16 10:57:41,846:INFO:--> checkpoint_filter_list: ['feature_map.back_block1.conv.weight', 'feature_map.back_block1.conv.bias', 'feature_map.back_block2.conv.weight', 'feature_map.back_block2.conv.bias', 'feature_map.back_block3.conv.weight', 'feature_map.back_block3.conv.bias'] +2022-10-16 10:57:41,846:INFO:--> anchor_scales: [[12, 16], [19, 36], [40, 28], [36, 75], [76, 55], [72, 146], [142, 110], [192, 243], [459, 401]] +2022-10-16 10:57:41,846:INFO:--> out_channel: 255 +2022-10-16 10:57:41,847:INFO:--> input_shape: [[3, 32, 64, 128, 256, 512, 1], [3, 48, 96, 192, 384, 768, 2], [3, 64, 128, 256, 512, 1024, 3], [3, 80, 160, 320, 640, 1280, 4]] +2022-10-16 10:57:41,847:INFO:--> test_img_shape: [640, 640] +2022-10-16 10:57:41,847:INFO:--> labels: ['person', 'bicycle', 'car', 'motorcycle', 'airplane', 'bus', 'train', 'truck', 'boat', 'traffic light', 'fire hydrant', 'stop sign', 'parking meter', 'bench', 'bird', 'cat', 'dog', 'horse', 'sheep', 'cow', 'elephant', 'bear', 'zebra', 'giraffe', 'backpack', 'umbrella', 'handbag', 'tie', 'suitcase', 'frisbee', 'skis', 'snowboard', 'sports ball', 'kite', 'baseball bat', 'baseball glove', 'skateboard', 'surfboard', 'tennis racket', 'bottle', 'wine glass', 'cup', 'fork', 'knife', 'spoon', 'bowl', 'banana', 'apple', 'sandwich', 'orange', 'broccoli', 'carrot', 'hot dog', 'pizza', 'donut', 'cake', 'chair', 'couch', 'potted plant', 'bed', 'dining table', 'toilet', 'tv', 'laptop', 'mouse', 'remote', 'keyboard', 'cell phone', 'microwave', 'oven', 'toaster', 'sink', 'refrigerator', 'book', 'clock', 'vase', 'scissors', 'teddy bear', 'hair drier', 'toothbrush'] +2022-10-16 10:57:41,847:INFO:--> coco_ids: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 27, 28, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 67, 70, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 84, 85, 86, 87, 88, 89, 90] +2022-10-16 10:57:41,847:INFO:--> result_files: ./result_Files +2022-10-16 10:57:41,847:INFO:--> config_path: E:\AI_program\yolo\yolov5\model_utils\../default_config.yaml +2022-10-16 10:57:41,847:INFO:--> data_root: xxx/dataset\train2017 +2022-10-16 10:57:41,847:INFO:--> annFile: xxx/dataset\annotations/instances_train2017.json +2022-10-16 10:57:41,847:INFO:--> logger: +2022-10-16 10:57:41,847:INFO: diff --git a/yolo_mindspore/output/train/2022-10-16_time_14_41_16_rank_0.log b/yolo_mindspore/output/train/2022-10-16_time_14_41_16_rank_0.log new file mode 100644 index 0000000..8690dc9 --- /dev/null +++ b/yolo_mindspore/output/train/2022-10-16_time_14_41_16_rank_0.log @@ -0,0 +1,79 @@ +2022-10-16 14:41:16,061:INFO:Args: +2022-10-16 14:41:16,061:INFO:--> enable_modelarts: False +2022-10-16 14:41:16,062:INFO:--> data_url: +2022-10-16 14:41:16,062:INFO:--> train_url: +2022-10-16 14:41:16,062:INFO:--> checkpoint_url: +2022-10-16 14:41:16,063:INFO:--> outputs_url: +2022-10-16 14:41:16,063:INFO:--> data_path: /dataset +2022-10-16 14:41:16,063:INFO:--> output_path: /output/train +2022-10-16 14:41:16,064:INFO:--> load_path: /dateset/mask/images/train +2022-10-16 14:41:16,064:INFO:--> device_target: CPU +2022-10-16 14:41:16,064:INFO:--> need_modelarts_dataset_unzip: True +2022-10-16 14:41:16,065:INFO:--> modelarts_dataset_unzip_name: coco +2022-10-16 14:41:16,065:INFO:--> data_dir: /coco +2022-10-16 14:41:16,066:INFO:--> per_batch_size: 8 +2022-10-16 14:41:16,066:INFO:--> yolov5_version: yolov5s +2022-10-16 14:41:16,066:INFO:--> pretrained_backbone: +2022-10-16 14:41:16,066:INFO:--> resume_yolov5: +2022-10-16 14:41:16,067:INFO:--> pretrained_checkpoint: +2022-10-16 14:41:16,067:INFO:--> output_dir: ./output/train +2022-10-16 14:41:16,067:INFO:--> train_img_dir: /dateset/mask/images/train +2022-10-16 14:41:16,068:INFO:--> train_json_file: coco/annotations.json +2022-10-16 14:41:16,068:INFO:--> lr_scheduler: cosine_annealing +2022-10-16 14:41:16,068:INFO:--> lr: 0.01 +2022-10-16 14:41:16,068:INFO:--> lr_epochs: [220, 250] +2022-10-16 14:41:16,069:INFO:--> lr_gamma: 0.1 +2022-10-16 14:41:16,069:INFO:--> eta_min: 0.0 +2022-10-16 14:41:16,069:INFO:--> T_max: 300 +2022-10-16 14:41:16,070:INFO:--> max_epoch: 300 +2022-10-16 14:41:16,070:INFO:--> warmup_epochs: 20 +2022-10-16 14:41:16,070:INFO:--> weight_decay: 0.0005 +2022-10-16 14:41:16,070:INFO:--> momentum: 0.9 +2022-10-16 14:41:16,071:INFO:--> loss_scale: 1024 +2022-10-16 14:41:16,071:INFO:--> label_smooth: 0 +2022-10-16 14:41:16,071:INFO:--> label_smooth_factor: 0.1 +2022-10-16 14:41:16,072:INFO:--> log_interval: 100 +2022-10-16 14:41:16,072:INFO:--> ckpt_path: outputs/ +2022-10-16 14:41:16,072:INFO:--> is_distributed: 0 +2022-10-16 14:41:16,073:INFO:--> bind_cpu: True +2022-10-16 14:41:16,073:INFO:--> device_num: 8 +2022-10-16 14:41:16,073:INFO:--> rank: 0 +2022-10-16 14:41:16,074:INFO:--> group_size: 1 +2022-10-16 14:41:16,074:INFO:--> need_profiler: 0 +2022-10-16 14:41:16,075:INFO:--> resize_rate: 10 +2022-10-16 14:41:16,075:INFO:--> filter_weight: False +2022-10-16 14:41:16,075:INFO:--> pretrained: +2022-10-16 14:41:16,075:INFO:--> log_path: outputs/ +2022-10-16 14:41:16,076:INFO:--> ann_val_file: +2022-10-16 14:41:16,076:INFO:--> eval_nms_thresh: 0.6 +2022-10-16 14:41:16,077:INFO:--> ignore_threshold: 0.7 +2022-10-16 14:41:16,077:INFO:--> test_ignore_threshold: 0.001 +2022-10-16 14:41:16,077:INFO:--> multi_label: True +2022-10-16 14:41:16,077:INFO:--> multi_label_thresh: 0.1 +2022-10-16 14:41:16,078:INFO:--> device_id: 0 +2022-10-16 14:41:16,078:INFO:--> batch_size: 1 +2022-10-16 14:41:16,078:INFO:--> testing_shape: [640, 640] +2022-10-16 14:41:16,079:INFO:--> ckpt_file: +2022-10-16 14:41:16,079:INFO:--> file_name: yolov5 +2022-10-16 14:41:16,079:INFO:--> file_format: MINDIR +2022-10-16 14:41:16,079:INFO:--> dataset_path: +2022-10-16 14:41:16,080:INFO:--> ann_file: +2022-10-16 14:41:16,080:INFO:--> hue: 0.015 +2022-10-16 14:41:16,080:INFO:--> saturation: 1.5 +2022-10-16 14:41:16,081:INFO:--> value: 0.4 +2022-10-16 14:41:16,081:INFO:--> jitter: 0.3 +2022-10-16 14:41:16,081:INFO:--> num_classes: 80 +2022-10-16 14:41:16,082:INFO:--> max_box: 150 +2022-10-16 14:41:16,082:INFO:--> checkpoint_filter_list: ['feature_map.back_block1.conv.weight', 'feature_map.back_block1.conv.bias', 'feature_map.back_block2.conv.weight', 'feature_map.back_block2.conv.bias', 'feature_map.back_block3.conv.weight', 'feature_map.back_block3.conv.bias'] +2022-10-16 14:41:16,082:INFO:--> anchor_scales: [[12, 16], [19, 36], [40, 28], [36, 75], [76, 55], [72, 146], [142, 110], [192, 243], [459, 401]] +2022-10-16 14:41:16,083:INFO:--> out_channel: 255 +2022-10-16 14:41:16,083:INFO:--> input_shape: [[3, 32, 64, 128, 256, 512, 1], [3, 48, 96, 192, 384, 768, 2], [3, 64, 128, 256, 512, 1024, 3], [3, 80, 160, 320, 640, 1280, 4]] +2022-10-16 14:41:16,084:INFO:--> test_img_shape: [640, 640] +2022-10-16 14:41:16,084:INFO:--> labels: ['person', 'bicycle', 'car', 'motorcycle', 'airplane', 'bus', 'train', 'truck', 'boat', 'traffic light', 'fire hydrant', 'stop sign', 'parking meter', 'bench', 'bird', 'cat', 'dog', 'horse', 'sheep', 'cow', 'elephant', 'bear', 'zebra', 'giraffe', 'backpack', 'umbrella', 'handbag', 'tie', 'suitcase', 'frisbee', 'skis', 'snowboard', 'sports ball', 'kite', 'baseball bat', 'baseball glove', 'skateboard', 'surfboard', 'tennis racket', 'bottle', 'wine glass', 'cup', 'fork', 'knife', 'spoon', 'bowl', 'banana', 'apple', 'sandwich', 'orange', 'broccoli', 'carrot', 'hot dog', 'pizza', 'donut', 'cake', 'chair', 'couch', 'potted plant', 'bed', 'dining table', 'toilet', 'tv', 'laptop', 'mouse', 'remote', 'keyboard', 'cell phone', 'microwave', 'oven', 'toaster', 'sink', 'refrigerator', 'book', 'clock', 'vase', 'scissors', 'teddy bear', 'hair drier', 'toothbrush'] +2022-10-16 14:41:16,085:INFO:--> coco_ids: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 27, 28, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 67, 70, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 84, 85, 86, 87, 88, 89, 90] +2022-10-16 14:41:16,086:INFO:--> result_files: ./result_Files +2022-10-16 14:41:16,086:INFO:--> config_path: e:\AI_program\yolo\yolov5\model_utils\../default_config.yaml +2022-10-16 14:41:16,086:INFO:--> data_root: /coco\dataset/mask/images/train +2022-10-16 14:41:16,087:INFO:--> annFile: /coco\coco/annotations.json +2022-10-16 14:41:16,087:INFO:--> logger: +2022-10-16 14:41:16,088:INFO: diff --git a/yolo_mindspore/output/train/2022-10-16_time_14_42_29_rank_0.log b/yolo_mindspore/output/train/2022-10-16_time_14_42_29_rank_0.log new file mode 100644 index 0000000..73a456a --- /dev/null +++ b/yolo_mindspore/output/train/2022-10-16_time_14_42_29_rank_0.log @@ -0,0 +1,79 @@ +2022-10-16 14:42:29,198:INFO:Args: +2022-10-16 14:42:29,198:INFO:--> enable_modelarts: False +2022-10-16 14:42:29,198:INFO:--> data_url: +2022-10-16 14:42:29,198:INFO:--> train_url: +2022-10-16 14:42:29,199:INFO:--> checkpoint_url: +2022-10-16 14:42:29,199:INFO:--> outputs_url: +2022-10-16 14:42:29,199:INFO:--> data_path: /dataset +2022-10-16 14:42:29,199:INFO:--> output_path: /output/train +2022-10-16 14:42:29,199:INFO:--> load_path: /dateset/mask/images/train +2022-10-16 14:42:29,199:INFO:--> device_target: CPU +2022-10-16 14:42:29,199:INFO:--> need_modelarts_dataset_unzip: True +2022-10-16 14:42:29,199:INFO:--> modelarts_dataset_unzip_name: coco +2022-10-16 14:42:29,199:INFO:--> data_dir: xxx/dataset +2022-10-16 14:42:29,201:INFO:--> per_batch_size: 8 +2022-10-16 14:42:29,201:INFO:--> yolov5_version: yolov5s +2022-10-16 14:42:29,201:INFO:--> pretrained_backbone: +2022-10-16 14:42:29,201:INFO:--> resume_yolov5: +2022-10-16 14:42:29,201:INFO:--> pretrained_checkpoint: +2022-10-16 14:42:29,202:INFO:--> output_dir: ./output/train +2022-10-16 14:42:29,202:INFO:--> train_img_dir: /dateset/mask/images/train +2022-10-16 14:42:29,202:INFO:--> train_json_file: coco/annotations.json +2022-10-16 14:42:29,202:INFO:--> lr_scheduler: cosine_annealing +2022-10-16 14:42:29,202:INFO:--> lr: 0.01 +2022-10-16 14:42:29,202:INFO:--> lr_epochs: [220, 250] +2022-10-16 14:42:29,202:INFO:--> lr_gamma: 0.1 +2022-10-16 14:42:29,202:INFO:--> eta_min: 0.0 +2022-10-16 14:42:29,202:INFO:--> T_max: 320 +2022-10-16 14:42:29,202:INFO:--> max_epoch: 320 +2022-10-16 14:42:29,202:INFO:--> warmup_epochs: 4 +2022-10-16 14:42:29,202:INFO:--> weight_decay: 0.0005 +2022-10-16 14:42:29,202:INFO:--> momentum: 0.9 +2022-10-16 14:42:29,203:INFO:--> loss_scale: 1024 +2022-10-16 14:42:29,203:INFO:--> label_smooth: 0 +2022-10-16 14:42:29,203:INFO:--> label_smooth_factor: 0.1 +2022-10-16 14:42:29,203:INFO:--> log_interval: 100 +2022-10-16 14:42:29,203:INFO:--> ckpt_path: outputs/ +2022-10-16 14:42:29,203:INFO:--> is_distributed: 0 +2022-10-16 14:42:29,203:INFO:--> bind_cpu: True +2022-10-16 14:42:29,203:INFO:--> device_num: 8 +2022-10-16 14:42:29,203:INFO:--> rank: 0 +2022-10-16 14:42:29,203:INFO:--> group_size: 1 +2022-10-16 14:42:29,203:INFO:--> need_profiler: 0 +2022-10-16 14:42:29,203:INFO:--> resize_rate: 10 +2022-10-16 14:42:29,203:INFO:--> filter_weight: False +2022-10-16 14:42:29,203:INFO:--> pretrained: +2022-10-16 14:42:29,203:INFO:--> log_path: outputs/ +2022-10-16 14:42:29,203:INFO:--> ann_val_file: +2022-10-16 14:42:29,203:INFO:--> eval_nms_thresh: 0.6 +2022-10-16 14:42:29,204:INFO:--> ignore_threshold: 0.7 +2022-10-16 14:42:29,204:INFO:--> test_ignore_threshold: 0.001 +2022-10-16 14:42:29,204:INFO:--> multi_label: True +2022-10-16 14:42:29,204:INFO:--> multi_label_thresh: 0.1 +2022-10-16 14:42:29,204:INFO:--> device_id: 0 +2022-10-16 14:42:29,204:INFO:--> batch_size: 1 +2022-10-16 14:42:29,204:INFO:--> testing_shape: [640, 640] +2022-10-16 14:42:29,204:INFO:--> ckpt_file: +2022-10-16 14:42:29,204:INFO:--> file_name: yolov5 +2022-10-16 14:42:29,204:INFO:--> file_format: MINDIR +2022-10-16 14:42:29,204:INFO:--> dataset_path: +2022-10-16 14:42:29,204:INFO:--> ann_file: +2022-10-16 14:42:29,204:INFO:--> hue: 0.015 +2022-10-16 14:42:29,204:INFO:--> saturation: 1.5 +2022-10-16 14:42:29,204:INFO:--> value: 0.4 +2022-10-16 14:42:29,204:INFO:--> jitter: 0.3 +2022-10-16 14:42:29,204:INFO:--> num_classes: 80 +2022-10-16 14:42:29,205:INFO:--> max_box: 150 +2022-10-16 14:42:29,205:INFO:--> checkpoint_filter_list: ['feature_map.back_block1.conv.weight', 'feature_map.back_block1.conv.bias', 'feature_map.back_block2.conv.weight', 'feature_map.back_block2.conv.bias', 'feature_map.back_block3.conv.weight', 'feature_map.back_block3.conv.bias'] +2022-10-16 14:42:29,205:INFO:--> anchor_scales: [[12, 16], [19, 36], [40, 28], [36, 75], [76, 55], [72, 146], [142, 110], [192, 243], [459, 401]] +2022-10-16 14:42:29,205:INFO:--> out_channel: 255 +2022-10-16 14:42:29,205:INFO:--> input_shape: [[3, 32, 64, 128, 256, 512, 1], [3, 48, 96, 192, 384, 768, 2], [3, 64, 128, 256, 512, 1024, 3], [3, 80, 160, 320, 640, 1280, 4]] +2022-10-16 14:42:29,205:INFO:--> test_img_shape: [640, 640] +2022-10-16 14:42:29,205:INFO:--> labels: ['person', 'bicycle', 'car', 'motorcycle', 'airplane', 'bus', 'train', 'truck', 'boat', 'traffic light', 'fire hydrant', 'stop sign', 'parking meter', 'bench', 'bird', 'cat', 'dog', 'horse', 'sheep', 'cow', 'elephant', 'bear', 'zebra', 'giraffe', 'backpack', 'umbrella', 'handbag', 'tie', 'suitcase', 'frisbee', 'skis', 'snowboard', 'sports ball', 'kite', 'baseball bat', 'baseball glove', 'skateboard', 'surfboard', 'tennis racket', 'bottle', 'wine glass', 'cup', 'fork', 'knife', 'spoon', 'bowl', 'banana', 'apple', 'sandwich', 'orange', 'broccoli', 'carrot', 'hot dog', 'pizza', 'donut', 'cake', 'chair', 'couch', 'potted plant', 'bed', 'dining table', 'toilet', 'tv', 'laptop', 'mouse', 'remote', 'keyboard', 'cell phone', 'microwave', 'oven', 'toaster', 'sink', 'refrigerator', 'book', 'clock', 'vase', 'scissors', 'teddy bear', 'hair drier', 'toothbrush'] +2022-10-16 14:42:29,205:INFO:--> coco_ids: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 27, 28, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 67, 70, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 84, 85, 86, 87, 88, 89, 90] +2022-10-16 14:42:29,205:INFO:--> result_files: ./result_Files +2022-10-16 14:42:29,205:INFO:--> config_path: E:\AI_program\yolo\yolov5\model_utils\../default_config.yaml +2022-10-16 14:42:29,205:INFO:--> data_root: xxx/dataset\dataset/mask/images/train +2022-10-16 14:42:29,205:INFO:--> annFile: xxx/dataset\coco/annotations.json +2022-10-16 14:42:29,205:INFO:--> logger: +2022-10-16 14:42:29,205:INFO: diff --git a/yolo_mindspore/output/train/2022-10-16_time_14_43_23_rank_0.log b/yolo_mindspore/output/train/2022-10-16_time_14_43_23_rank_0.log new file mode 100644 index 0000000..c69b67b --- /dev/null +++ b/yolo_mindspore/output/train/2022-10-16_time_14_43_23_rank_0.log @@ -0,0 +1,79 @@ +2022-10-16 14:43:23,591:INFO:Args: +2022-10-16 14:43:23,591:INFO:--> enable_modelarts: False +2022-10-16 14:43:23,592:INFO:--> data_url: +2022-10-16 14:43:23,592:INFO:--> train_url: +2022-10-16 14:43:23,592:INFO:--> checkpoint_url: +2022-10-16 14:43:23,592:INFO:--> outputs_url: +2022-10-16 14:43:23,592:INFO:--> data_path: /dataset +2022-10-16 14:43:23,592:INFO:--> output_path: /output/train +2022-10-16 14:43:23,592:INFO:--> load_path: /dateset/mask/images/train +2022-10-16 14:43:23,592:INFO:--> device_target: CPU +2022-10-16 14:43:23,592:INFO:--> need_modelarts_dataset_unzip: True +2022-10-16 14:43:23,592:INFO:--> modelarts_dataset_unzip_name: coco +2022-10-16 14:43:23,592:INFO:--> data_dir: xxx/dataset +2022-10-16 14:43:23,593:INFO:--> per_batch_size: 8 +2022-10-16 14:43:23,593:INFO:--> yolov5_version: yolov5s +2022-10-16 14:43:23,593:INFO:--> pretrained_backbone: +2022-10-16 14:43:23,593:INFO:--> resume_yolov5: +2022-10-16 14:43:23,593:INFO:--> pretrained_checkpoint: +2022-10-16 14:43:23,593:INFO:--> output_dir: ./output/train +2022-10-16 14:43:23,593:INFO:--> train_img_dir: /dateset/mask/images/train +2022-10-16 14:43:23,593:INFO:--> train_json_file: coco/annotations.json +2022-10-16 14:43:23,593:INFO:--> lr_scheduler: cosine_annealing +2022-10-16 14:43:23,593:INFO:--> lr: 0.01 +2022-10-16 14:43:23,593:INFO:--> lr_epochs: [220, 250] +2022-10-16 14:43:23,594:INFO:--> lr_gamma: 0.1 +2022-10-16 14:43:23,594:INFO:--> eta_min: 0.0 +2022-10-16 14:43:23,594:INFO:--> T_max: 320 +2022-10-16 14:43:23,594:INFO:--> max_epoch: 320 +2022-10-16 14:43:23,594:INFO:--> warmup_epochs: 4 +2022-10-16 14:43:23,594:INFO:--> weight_decay: 0.0005 +2022-10-16 14:43:23,594:INFO:--> momentum: 0.9 +2022-10-16 14:43:23,594:INFO:--> loss_scale: 1024 +2022-10-16 14:43:23,594:INFO:--> label_smooth: 0 +2022-10-16 14:43:23,594:INFO:--> label_smooth_factor: 0.1 +2022-10-16 14:43:23,594:INFO:--> log_interval: 100 +2022-10-16 14:43:23,594:INFO:--> ckpt_path: outputs/ +2022-10-16 14:43:23,594:INFO:--> is_distributed: 0 +2022-10-16 14:43:23,594:INFO:--> bind_cpu: True +2022-10-16 14:43:23,594:INFO:--> device_num: 8 +2022-10-16 14:43:23,595:INFO:--> rank: 0 +2022-10-16 14:43:23,595:INFO:--> group_size: 1 +2022-10-16 14:43:23,595:INFO:--> need_profiler: 0 +2022-10-16 14:43:23,595:INFO:--> resize_rate: 10 +2022-10-16 14:43:23,595:INFO:--> filter_weight: False +2022-10-16 14:43:23,595:INFO:--> pretrained: +2022-10-16 14:43:23,595:INFO:--> log_path: outputs/ +2022-10-16 14:43:23,595:INFO:--> ann_val_file: +2022-10-16 14:43:23,595:INFO:--> eval_nms_thresh: 0.6 +2022-10-16 14:43:23,595:INFO:--> ignore_threshold: 0.7 +2022-10-16 14:43:23,595:INFO:--> test_ignore_threshold: 0.001 +2022-10-16 14:43:23,595:INFO:--> multi_label: True +2022-10-16 14:43:23,595:INFO:--> multi_label_thresh: 0.1 +2022-10-16 14:43:23,595:INFO:--> device_id: 0 +2022-10-16 14:43:23,595:INFO:--> batch_size: 1 +2022-10-16 14:43:23,596:INFO:--> testing_shape: [640, 640] +2022-10-16 14:43:23,596:INFO:--> ckpt_file: +2022-10-16 14:43:23,596:INFO:--> file_name: yolov5 +2022-10-16 14:43:23,596:INFO:--> file_format: MINDIR +2022-10-16 14:43:23,596:INFO:--> dataset_path: +2022-10-16 14:43:23,596:INFO:--> ann_file: +2022-10-16 14:43:23,596:INFO:--> hue: 0.015 +2022-10-16 14:43:23,596:INFO:--> saturation: 1.5 +2022-10-16 14:43:23,596:INFO:--> value: 0.4 +2022-10-16 14:43:23,596:INFO:--> jitter: 0.3 +2022-10-16 14:43:23,596:INFO:--> num_classes: 80 +2022-10-16 14:43:23,596:INFO:--> max_box: 150 +2022-10-16 14:43:23,596:INFO:--> checkpoint_filter_list: ['feature_map.back_block1.conv.weight', 'feature_map.back_block1.conv.bias', 'feature_map.back_block2.conv.weight', 'feature_map.back_block2.conv.bias', 'feature_map.back_block3.conv.weight', 'feature_map.back_block3.conv.bias'] +2022-10-16 14:43:23,596:INFO:--> anchor_scales: [[12, 16], [19, 36], [40, 28], [36, 75], [76, 55], [72, 146], [142, 110], [192, 243], [459, 401]] +2022-10-16 14:43:23,597:INFO:--> out_channel: 255 +2022-10-16 14:43:23,597:INFO:--> input_shape: [[3, 32, 64, 128, 256, 512, 1], [3, 48, 96, 192, 384, 768, 2], [3, 64, 128, 256, 512, 1024, 3], [3, 80, 160, 320, 640, 1280, 4]] +2022-10-16 14:43:23,597:INFO:--> test_img_shape: [640, 640] +2022-10-16 14:43:23,597:INFO:--> labels: ['person', 'bicycle', 'car', 'motorcycle', 'airplane', 'bus', 'train', 'truck', 'boat', 'traffic light', 'fire hydrant', 'stop sign', 'parking meter', 'bench', 'bird', 'cat', 'dog', 'horse', 'sheep', 'cow', 'elephant', 'bear', 'zebra', 'giraffe', 'backpack', 'umbrella', 'handbag', 'tie', 'suitcase', 'frisbee', 'skis', 'snowboard', 'sports ball', 'kite', 'baseball bat', 'baseball glove', 'skateboard', 'surfboard', 'tennis racket', 'bottle', 'wine glass', 'cup', 'fork', 'knife', 'spoon', 'bowl', 'banana', 'apple', 'sandwich', 'orange', 'broccoli', 'carrot', 'hot dog', 'pizza', 'donut', 'cake', 'chair', 'couch', 'potted plant', 'bed', 'dining table', 'toilet', 'tv', 'laptop', 'mouse', 'remote', 'keyboard', 'cell phone', 'microwave', 'oven', 'toaster', 'sink', 'refrigerator', 'book', 'clock', 'vase', 'scissors', 'teddy bear', 'hair drier', 'toothbrush'] +2022-10-16 14:43:23,597:INFO:--> coco_ids: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 27, 28, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 67, 70, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 84, 85, 86, 87, 88, 89, 90] +2022-10-16 14:43:23,597:INFO:--> result_files: ./result_Files +2022-10-16 14:43:23,597:INFO:--> config_path: E:\AI_program\yolo\yolov5\model_utils\../default_config.yaml +2022-10-16 14:43:23,597:INFO:--> data_root: xxx/dataset\dataset/mask/images/train +2022-10-16 14:43:23,597:INFO:--> annFile: xxx/dataset\coco/annotations.json +2022-10-16 14:43:23,597:INFO:--> logger: +2022-10-16 14:43:23,597:INFO: diff --git a/yolo_mindspore/output/train/2022-10-16_time_15_05_22_rank_0.log b/yolo_mindspore/output/train/2022-10-16_time_15_05_22_rank_0.log new file mode 100644 index 0000000..cda40bc --- /dev/null +++ b/yolo_mindspore/output/train/2022-10-16_time_15_05_22_rank_0.log @@ -0,0 +1,79 @@ +2022-10-16 15:05:22,158:INFO:Args: +2022-10-16 15:05:22,159:INFO:--> enable_modelarts: False +2022-10-16 15:05:22,159:INFO:--> data_url: +2022-10-16 15:05:22,159:INFO:--> train_url: dateset/mask/images/train +2022-10-16 15:05:22,159:INFO:--> checkpoint_url: +2022-10-16 15:05:22,159:INFO:--> outputs_url: output/train +2022-10-16 15:05:22,159:INFO:--> data_path: dataset +2022-10-16 15:05:22,159:INFO:--> output_path: output/train +2022-10-16 15:05:22,159:INFO:--> load_path: dateset/mask/images/train +2022-10-16 15:05:22,159:INFO:--> device_target: CPU +2022-10-16 15:05:22,159:INFO:--> need_modelarts_dataset_unzip: True +2022-10-16 15:05:22,159:INFO:--> modelarts_dataset_unzip_name: coco +2022-10-16 15:05:22,160:INFO:--> data_dir: xxx/dataset +2022-10-16 15:05:22,160:INFO:--> per_batch_size: 8 +2022-10-16 15:05:22,160:INFO:--> yolov5_version: yolov5s +2022-10-16 15:05:22,160:INFO:--> pretrained_backbone: +2022-10-16 15:05:22,160:INFO:--> resume_yolov5: +2022-10-16 15:05:22,160:INFO:--> pretrained_checkpoint: +2022-10-16 15:05:22,160:INFO:--> output_dir: output/train +2022-10-16 15:05:22,161:INFO:--> train_img_dir: dateset/mask/images/train +2022-10-16 15:05:22,161:INFO:--> train_json_file: coco/annotations.json +2022-10-16 15:05:22,161:INFO:--> lr_scheduler: cosine_annealing +2022-10-16 15:05:22,161:INFO:--> lr: 0.01 +2022-10-16 15:05:22,161:INFO:--> lr_epochs: [220, 250] +2022-10-16 15:05:22,161:INFO:--> lr_gamma: 0.1 +2022-10-16 15:05:22,161:INFO:--> eta_min: 0.0 +2022-10-16 15:05:22,161:INFO:--> T_max: 320 +2022-10-16 15:05:22,161:INFO:--> max_epoch: 320 +2022-10-16 15:05:22,161:INFO:--> warmup_epochs: 4 +2022-10-16 15:05:22,161:INFO:--> weight_decay: 0.0005 +2022-10-16 15:05:22,161:INFO:--> momentum: 0.9 +2022-10-16 15:05:22,161:INFO:--> loss_scale: 1024 +2022-10-16 15:05:22,161:INFO:--> label_smooth: 0 +2022-10-16 15:05:22,161:INFO:--> label_smooth_factor: 0.1 +2022-10-16 15:05:22,161:INFO:--> log_interval: 100 +2022-10-16 15:05:22,161:INFO:--> ckpt_path: outputs/ +2022-10-16 15:05:22,162:INFO:--> is_distributed: 0 +2022-10-16 15:05:22,162:INFO:--> bind_cpu: True +2022-10-16 15:05:22,162:INFO:--> device_num: 8 +2022-10-16 15:05:22,162:INFO:--> rank: 0 +2022-10-16 15:05:22,162:INFO:--> group_size: 1 +2022-10-16 15:05:22,162:INFO:--> need_profiler: 0 +2022-10-16 15:05:22,162:INFO:--> resize_rate: 10 +2022-10-16 15:05:22,162:INFO:--> filter_weight: False +2022-10-16 15:05:22,162:INFO:--> pretrained: +2022-10-16 15:05:22,162:INFO:--> log_path: outputs/ +2022-10-16 15:05:22,162:INFO:--> ann_val_file: +2022-10-16 15:05:22,162:INFO:--> eval_nms_thresh: 0.6 +2022-10-16 15:05:22,162:INFO:--> ignore_threshold: 0.7 +2022-10-16 15:05:22,162:INFO:--> test_ignore_threshold: 0.001 +2022-10-16 15:05:22,162:INFO:--> multi_label: True +2022-10-16 15:05:22,162:INFO:--> multi_label_thresh: 0.1 +2022-10-16 15:05:22,162:INFO:--> device_id: 0 +2022-10-16 15:05:22,163:INFO:--> batch_size: 1 +2022-10-16 15:05:22,163:INFO:--> testing_shape: [640, 640] +2022-10-16 15:05:22,163:INFO:--> ckpt_file: +2022-10-16 15:05:22,163:INFO:--> file_name: yolov5 +2022-10-16 15:05:22,163:INFO:--> file_format: MINDIR +2022-10-16 15:05:22,163:INFO:--> dataset_path: +2022-10-16 15:05:22,163:INFO:--> ann_file: +2022-10-16 15:05:22,163:INFO:--> hue: 0.015 +2022-10-16 15:05:22,163:INFO:--> saturation: 1.5 +2022-10-16 15:05:22,163:INFO:--> value: 0.4 +2022-10-16 15:05:22,163:INFO:--> jitter: 0.3 +2022-10-16 15:05:22,163:INFO:--> num_classes: 80 +2022-10-16 15:05:22,163:INFO:--> max_box: 150 +2022-10-16 15:05:22,163:INFO:--> checkpoint_filter_list: ['feature_map.back_block1.conv.weight', 'feature_map.back_block1.conv.bias', 'feature_map.back_block2.conv.weight', 'feature_map.back_block2.conv.bias', 'feature_map.back_block3.conv.weight', 'feature_map.back_block3.conv.bias'] +2022-10-16 15:05:22,163:INFO:--> anchor_scales: [[12, 16], [19, 36], [40, 28], [36, 75], [76, 55], [72, 146], [142, 110], [192, 243], [459, 401]] +2022-10-16 15:05:22,163:INFO:--> out_channel: 255 +2022-10-16 15:05:22,164:INFO:--> input_shape: [[3, 32, 64, 128, 256, 512, 1], [3, 48, 96, 192, 384, 768, 2], [3, 64, 128, 256, 512, 1024, 3], [3, 80, 160, 320, 640, 1280, 4]] +2022-10-16 15:05:22,164:INFO:--> test_img_shape: [640, 640] +2022-10-16 15:05:22,164:INFO:--> labels: ['person', 'bicycle', 'car', 'motorcycle', 'airplane', 'bus', 'train', 'truck', 'boat', 'traffic light', 'fire hydrant', 'stop sign', 'parking meter', 'bench', 'bird', 'cat', 'dog', 'horse', 'sheep', 'cow', 'elephant', 'bear', 'zebra', 'giraffe', 'backpack', 'umbrella', 'handbag', 'tie', 'suitcase', 'frisbee', 'skis', 'snowboard', 'sports ball', 'kite', 'baseball bat', 'baseball glove', 'skateboard', 'surfboard', 'tennis racket', 'bottle', 'wine glass', 'cup', 'fork', 'knife', 'spoon', 'bowl', 'banana', 'apple', 'sandwich', 'orange', 'broccoli', 'carrot', 'hot dog', 'pizza', 'donut', 'cake', 'chair', 'couch', 'potted plant', 'bed', 'dining table', 'toilet', 'tv', 'laptop', 'mouse', 'remote', 'keyboard', 'cell phone', 'microwave', 'oven', 'toaster', 'sink', 'refrigerator', 'book', 'clock', 'vase', 'scissors', 'teddy bear', 'hair drier', 'toothbrush'] +2022-10-16 15:05:22,164:INFO:--> coco_ids: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 27, 28, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 67, 70, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 84, 85, 86, 87, 88, 89, 90] +2022-10-16 15:05:22,164:INFO:--> result_files: ./result_Files +2022-10-16 15:05:22,164:INFO:--> config_path: E:\AI_program\yolo\yolov5\model_utils\../default_config.yaml +2022-10-16 15:05:22,164:INFO:--> data_root: xxx/dataset\dataset/mask/images/train +2022-10-16 15:05:22,164:INFO:--> annFile: xxx/dataset\coco/annotations.json +2022-10-16 15:05:22,164:INFO:--> logger: +2022-10-16 15:05:22,164:INFO: diff --git a/yolo_mindspore/output/train/2022-10-16_time_15_11_22_rank_0.log b/yolo_mindspore/output/train/2022-10-16_time_15_11_22_rank_0.log new file mode 100644 index 0000000..f6d3bad --- /dev/null +++ b/yolo_mindspore/output/train/2022-10-16_time_15_11_22_rank_0.log @@ -0,0 +1,79 @@ +2022-10-16 15:11:22,848:INFO:Args: +2022-10-16 15:11:22,848:INFO:--> enable_modelarts: False +2022-10-16 15:11:22,848:INFO:--> data_url: +2022-10-16 15:11:22,848:INFO:--> train_url: dateset/mask/images/train +2022-10-16 15:11:22,848:INFO:--> checkpoint_url: +2022-10-16 15:11:22,848:INFO:--> outputs_url: output/train +2022-10-16 15:11:22,848:INFO:--> data_path: dataset +2022-10-16 15:11:22,849:INFO:--> output_path: output/train +2022-10-16 15:11:22,849:INFO:--> load_path: dateset/mask/images/train +2022-10-16 15:11:22,849:INFO:--> device_target: CPU +2022-10-16 15:11:22,849:INFO:--> need_modelarts_dataset_unzip: True +2022-10-16 15:11:22,849:INFO:--> modelarts_dataset_unzip_name: coco +2022-10-16 15:11:22,849:INFO:--> data_dir: xxx/dataset +2022-10-16 15:11:22,849:INFO:--> per_batch_size: 8 +2022-10-16 15:11:22,850:INFO:--> yolov5_version: yolov5s +2022-10-16 15:11:22,850:INFO:--> pretrained_backbone: +2022-10-16 15:11:22,850:INFO:--> resume_yolov5: +2022-10-16 15:11:22,850:INFO:--> pretrained_checkpoint: +2022-10-16 15:11:22,850:INFO:--> output_dir: output/train +2022-10-16 15:11:22,850:INFO:--> train_img_dir: dateset/mask/images/train +2022-10-16 15:11:22,850:INFO:--> train_json_file: coco/annotations.json +2022-10-16 15:11:22,850:INFO:--> lr_scheduler: cosine_annealing +2022-10-16 15:11:22,850:INFO:--> lr: 0.01 +2022-10-16 15:11:22,850:INFO:--> lr_epochs: [220, 250] +2022-10-16 15:11:22,850:INFO:--> lr_gamma: 0.1 +2022-10-16 15:11:22,850:INFO:--> eta_min: 0.0 +2022-10-16 15:11:22,850:INFO:--> T_max: 320 +2022-10-16 15:11:22,850:INFO:--> max_epoch: 320 +2022-10-16 15:11:22,850:INFO:--> warmup_epochs: 4 +2022-10-16 15:11:22,850:INFO:--> weight_decay: 0.0005 +2022-10-16 15:11:22,850:INFO:--> momentum: 0.9 +2022-10-16 15:11:22,851:INFO:--> loss_scale: 1024 +2022-10-16 15:11:22,851:INFO:--> label_smooth: 0 +2022-10-16 15:11:22,851:INFO:--> label_smooth_factor: 0.1 +2022-10-16 15:11:22,851:INFO:--> log_interval: 100 +2022-10-16 15:11:22,851:INFO:--> ckpt_path: outputs/ +2022-10-16 15:11:22,851:INFO:--> is_distributed: 0 +2022-10-16 15:11:22,851:INFO:--> bind_cpu: True +2022-10-16 15:11:22,851:INFO:--> device_num: 8 +2022-10-16 15:11:22,851:INFO:--> rank: 0 +2022-10-16 15:11:22,851:INFO:--> group_size: 1 +2022-10-16 15:11:22,851:INFO:--> need_profiler: 0 +2022-10-16 15:11:22,851:INFO:--> resize_rate: 10 +2022-10-16 15:11:22,851:INFO:--> filter_weight: False +2022-10-16 15:11:22,851:INFO:--> pretrained: +2022-10-16 15:11:22,851:INFO:--> log_path: outputs/ +2022-10-16 15:11:22,851:INFO:--> ann_val_file: +2022-10-16 15:11:22,851:INFO:--> eval_nms_thresh: 0.6 +2022-10-16 15:11:22,851:INFO:--> ignore_threshold: 0.7 +2022-10-16 15:11:22,851:INFO:--> test_ignore_threshold: 0.001 +2022-10-16 15:11:22,852:INFO:--> multi_label: True +2022-10-16 15:11:22,852:INFO:--> multi_label_thresh: 0.1 +2022-10-16 15:11:22,852:INFO:--> device_id: 0 +2022-10-16 15:11:22,852:INFO:--> batch_size: 1 +2022-10-16 15:11:22,852:INFO:--> testing_shape: [640, 640] +2022-10-16 15:11:22,852:INFO:--> ckpt_file: +2022-10-16 15:11:22,852:INFO:--> file_name: yolov5 +2022-10-16 15:11:22,852:INFO:--> file_format: MINDIR +2022-10-16 15:11:22,852:INFO:--> dataset_path: +2022-10-16 15:11:22,852:INFO:--> ann_file: +2022-10-16 15:11:22,852:INFO:--> hue: 0.015 +2022-10-16 15:11:22,852:INFO:--> saturation: 1.5 +2022-10-16 15:11:22,852:INFO:--> value: 0.4 +2022-10-16 15:11:22,852:INFO:--> jitter: 0.3 +2022-10-16 15:11:22,852:INFO:--> num_classes: 80 +2022-10-16 15:11:22,852:INFO:--> max_box: 150 +2022-10-16 15:11:22,852:INFO:--> checkpoint_filter_list: ['feature_map.back_block1.conv.weight', 'feature_map.back_block1.conv.bias', 'feature_map.back_block2.conv.weight', 'feature_map.back_block2.conv.bias', 'feature_map.back_block3.conv.weight', 'feature_map.back_block3.conv.bias'] +2022-10-16 15:11:22,852:INFO:--> anchor_scales: [[12, 16], [19, 36], [40, 28], [36, 75], [76, 55], [72, 146], [142, 110], [192, 243], [459, 401]] +2022-10-16 15:11:22,853:INFO:--> out_channel: 255 +2022-10-16 15:11:22,853:INFO:--> input_shape: [[3, 32, 64, 128, 256, 512, 1], [3, 48, 96, 192, 384, 768, 2], [3, 64, 128, 256, 512, 1024, 3], [3, 80, 160, 320, 640, 1280, 4]] +2022-10-16 15:11:22,853:INFO:--> test_img_shape: [640, 640] +2022-10-16 15:11:22,853:INFO:--> labels: ['person', 'bicycle', 'car', 'motorcycle', 'airplane', 'bus', 'train', 'truck', 'boat', 'traffic light', 'fire hydrant', 'stop sign', 'parking meter', 'bench', 'bird', 'cat', 'dog', 'horse', 'sheep', 'cow', 'elephant', 'bear', 'zebra', 'giraffe', 'backpack', 'umbrella', 'handbag', 'tie', 'suitcase', 'frisbee', 'skis', 'snowboard', 'sports ball', 'kite', 'baseball bat', 'baseball glove', 'skateboard', 'surfboard', 'tennis racket', 'bottle', 'wine glass', 'cup', 'fork', 'knife', 'spoon', 'bowl', 'banana', 'apple', 'sandwich', 'orange', 'broccoli', 'carrot', 'hot dog', 'pizza', 'donut', 'cake', 'chair', 'couch', 'potted plant', 'bed', 'dining table', 'toilet', 'tv', 'laptop', 'mouse', 'remote', 'keyboard', 'cell phone', 'microwave', 'oven', 'toaster', 'sink', 'refrigerator', 'book', 'clock', 'vase', 'scissors', 'teddy bear', 'hair drier', 'toothbrush'] +2022-10-16 15:11:22,853:INFO:--> coco_ids: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 27, 28, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 67, 70, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 84, 85, 86, 87, 88, 89, 90] +2022-10-16 15:11:22,853:INFO:--> result_files: ./result_Files +2022-10-16 15:11:22,853:INFO:--> config_path: E:\AI_program\yolo\yolov5\model_utils\../default_config.yaml +2022-10-16 15:11:22,853:INFO:--> data_root: xxx/dataset\dataset/mask/images/train +2022-10-16 15:11:22,853:INFO:--> annFile: xxx/dataset\coco/annotations.json +2022-10-16 15:11:22,853:INFO:--> logger: +2022-10-16 15:11:22,853:INFO: diff --git a/yolo_mindspore/output/train/2022-10-16_time_15_13_16_rank_0.log b/yolo_mindspore/output/train/2022-10-16_time_15_13_16_rank_0.log new file mode 100644 index 0000000..1bf7e1c --- /dev/null +++ b/yolo_mindspore/output/train/2022-10-16_time_15_13_16_rank_0.log @@ -0,0 +1,80 @@ +2022-10-16 15:13:16,399:INFO:Args: +2022-10-16 15:13:16,399:INFO:--> enable_modelarts: False +2022-10-16 15:13:16,399:INFO:--> data_url: +2022-10-16 15:13:16,399:INFO:--> train_url: dateset/mask/images/train +2022-10-16 15:13:16,399:INFO:--> checkpoint_url: +2022-10-16 15:13:16,399:INFO:--> outputs_url: output/train +2022-10-16 15:13:16,399:INFO:--> data_path: dataset +2022-10-16 15:13:16,399:INFO:--> output_path: output/train +2022-10-16 15:13:16,401:INFO:--> load_path: dateset/mask/images/train +2022-10-16 15:13:16,401:INFO:--> device_target: CPU +2022-10-16 15:13:16,401:INFO:--> need_modelarts_dataset_unzip: True +2022-10-16 15:13:16,401:INFO:--> modelarts_dataset_unzip_name: coco +2022-10-16 15:13:16,402:INFO:--> data_dir: +2022-10-16 15:13:16,403:INFO:--> per_batch_size: 8 +2022-10-16 15:13:16,403:INFO:--> yolov5_version: yolov5s +2022-10-16 15:13:16,403:INFO:--> pretrained_backbone: +2022-10-16 15:13:16,403:INFO:--> resume_yolov5: +2022-10-16 15:13:16,403:INFO:--> pretrained_checkpoint: +2022-10-16 15:13:16,403:INFO:--> output_dir: output/train +2022-10-16 15:13:16,403:INFO:--> train_img_dir: dateset/mask/images/train +2022-10-16 15:13:16,403:INFO:--> train_json_file: coco/annotations.json +2022-10-16 15:13:16,403:INFO:--> lr_scheduler: cosine_annealing +2022-10-16 15:13:16,403:INFO:--> lr: 0.01 +2022-10-16 15:13:16,403:INFO:--> lr_epochs: [220, 250] +2022-10-16 15:13:16,403:INFO:--> lr_gamma: 0.1 +2022-10-16 15:13:16,403:INFO:--> eta_min: 0.0 +2022-10-16 15:13:16,403:INFO:--> T_max: 320 +2022-10-16 15:13:16,403:INFO:--> max_epoch: 320 +2022-10-16 15:13:16,403:INFO:--> warmup_epochs: 4 +2022-10-16 15:13:16,404:INFO:--> weight_decay: 0.0005 +2022-10-16 15:13:16,404:INFO:--> momentum: 0.9 +2022-10-16 15:13:16,404:INFO:--> loss_scale: 1024 +2022-10-16 15:13:16,404:INFO:--> label_smooth: 0 +2022-10-16 15:13:16,404:INFO:--> label_smooth_factor: 0.1 +2022-10-16 15:13:16,404:INFO:--> log_interval: 100 +2022-10-16 15:13:16,404:INFO:--> ckpt_path: outputs/ +2022-10-16 15:13:16,404:INFO:--> is_distributed: 0 +2022-10-16 15:13:16,404:INFO:--> bind_cpu: True +2022-10-16 15:13:16,404:INFO:--> device_num: 8 +2022-10-16 15:13:16,404:INFO:--> rank: 0 +2022-10-16 15:13:16,404:INFO:--> group_size: 1 +2022-10-16 15:13:16,404:INFO:--> need_profiler: 0 +2022-10-16 15:13:16,404:INFO:--> resize_rate: 10 +2022-10-16 15:13:16,404:INFO:--> filter_weight: False +2022-10-16 15:13:16,404:INFO:--> pretrained: +2022-10-16 15:13:16,404:INFO:--> log_path: outputs/ +2022-10-16 15:13:16,404:INFO:--> ann_val_file: +2022-10-16 15:13:16,404:INFO:--> eval_nms_thresh: 0.6 +2022-10-16 15:13:16,405:INFO:--> ignore_threshold: 0.7 +2022-10-16 15:13:16,405:INFO:--> test_ignore_threshold: 0.001 +2022-10-16 15:13:16,405:INFO:--> multi_label: True +2022-10-16 15:13:16,405:INFO:--> multi_label_thresh: 0.1 +2022-10-16 15:13:16,405:INFO:--> device_id: 0 +2022-10-16 15:13:16,405:INFO:--> batch_size: 1 +2022-10-16 15:13:16,405:INFO:--> testing_shape: [640, 640] +2022-10-16 15:13:16,405:INFO:--> ckpt_file: +2022-10-16 15:13:16,405:INFO:--> file_name: yolov5 +2022-10-16 15:13:16,405:INFO:--> file_format: MINDIR +2022-10-16 15:13:16,405:INFO:--> dataset_path: +2022-10-16 15:13:16,405:INFO:--> ann_file: +2022-10-16 15:13:16,405:INFO:--> hue: 0.015 +2022-10-16 15:13:16,405:INFO:--> saturation: 1.5 +2022-10-16 15:13:16,405:INFO:--> value: 0.4 +2022-10-16 15:13:16,405:INFO:--> jitter: 0.3 +2022-10-16 15:13:16,405:INFO:--> num_classes: 80 +2022-10-16 15:13:16,405:INFO:--> max_box: 150 +2022-10-16 15:13:16,406:INFO:--> checkpoint_filter_list: ['feature_map.back_block1.conv.weight', 'feature_map.back_block1.conv.bias', 'feature_map.back_block2.conv.weight', 'feature_map.back_block2.conv.bias', 'feature_map.back_block3.conv.weight', 'feature_map.back_block3.conv.bias'] +2022-10-16 15:13:16,406:INFO:--> anchor_scales: [[12, 16], [19, 36], [40, 28], [36, 75], [76, 55], [72, 146], [142, 110], [192, 243], [459, 401]] +2022-10-16 15:13:16,406:INFO:--> out_channel: 255 +2022-10-16 15:13:16,406:INFO:--> input_shape: [[3, 32, 64, 128, 256, 512, 1], [3, 48, 96, 192, 384, 768, 2], [3, 64, 128, 256, 512, 1024, 3], [3, 80, 160, 320, 640, 1280, 4]] +2022-10-16 15:13:16,406:INFO:--> test_img_shape: [640, 640] +2022-10-16 15:13:16,406:INFO:--> labels: ['person', 'bicycle', 'car', 'motorcycle', 'airplane', 'bus', 'train', 'truck', 'boat', 'traffic light', 'fire hydrant', 'stop sign', 'parking meter', 'bench', 'bird', 'cat', 'dog', 'horse', 'sheep', 'cow', 'elephant', 'bear', 'zebra', 'giraffe', 'backpack', 'umbrella', 'handbag', 'tie', 'suitcase', 'frisbee', 'skis', 'snowboard', 'sports ball', 'kite', 'baseball bat', 'baseball glove', 'skateboard', 'surfboard', 'tennis racket', 'bottle', 'wine glass', 'cup', 'fork', 'knife', 'spoon', 'bowl', 'banana', 'apple', 'sandwich', 'orange', 'broccoli', 'carrot', 'hot dog', 'pizza', 'donut', 'cake', 'chair', 'couch', 'potted plant', 'bed', 'dining table', 'toilet', 'tv', 'laptop', 'mouse', 'remote', 'keyboard', 'cell phone', 'microwave', 'oven', 'toaster', 'sink', 'refrigerator', 'book', 'clock', 'vase', 'scissors', 'teddy bear', 'hair drier', 'toothbrush'] +2022-10-16 15:13:16,406:INFO:--> coco_ids: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 27, 28, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 67, 70, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 84, 85, 86, 87, 88, 89, 90] +2022-10-16 15:13:16,406:INFO:--> result_files: ./result_Files +2022-10-16 15:13:16,406:INFO:--> config_path: E:\AI_program\yolo\yolov5\model_utils\../default_config.yaml +2022-10-16 15:13:16,406:INFO:--> data_root: dataset/mask/images/train +2022-10-16 15:13:16,406:INFO:--> annFile: coco/annotations.json +2022-10-16 15:13:16,406:INFO:--> logger: +2022-10-16 15:13:16,406:INFO: +2022-10-16 15:13:17,989:INFO:Finish loading dataset diff --git a/yolo_mindspore/output/train/2022-10-16_time_15_14_21_rank_0.log b/yolo_mindspore/output/train/2022-10-16_time_15_14_21_rank_0.log new file mode 100644 index 0000000..94281c7 --- /dev/null +++ b/yolo_mindspore/output/train/2022-10-16_time_15_14_21_rank_0.log @@ -0,0 +1,80 @@ +2022-10-16 15:14:21,465:INFO:Args: +2022-10-16 15:14:21,465:INFO:--> enable_modelarts: False +2022-10-16 15:14:21,465:INFO:--> data_url: +2022-10-16 15:14:21,465:INFO:--> train_url: dateset/mask/images/train +2022-10-16 15:14:21,465:INFO:--> checkpoint_url: +2022-10-16 15:14:21,465:INFO:--> outputs_url: output/train +2022-10-16 15:14:21,465:INFO:--> data_path: dataset +2022-10-16 15:14:21,465:INFO:--> output_path: output/train +2022-10-16 15:14:21,465:INFO:--> load_path: dateset/mask/images/train +2022-10-16 15:14:21,465:INFO:--> device_target: CPU +2022-10-16 15:14:21,466:INFO:--> need_modelarts_dataset_unzip: True +2022-10-16 15:14:21,466:INFO:--> modelarts_dataset_unzip_name: coco +2022-10-16 15:14:21,467:INFO:--> data_dir: dataset +2022-10-16 15:14:21,467:INFO:--> per_batch_size: 8 +2022-10-16 15:14:21,467:INFO:--> yolov5_version: yolov5s +2022-10-16 15:14:21,467:INFO:--> pretrained_backbone: +2022-10-16 15:14:21,467:INFO:--> resume_yolov5: +2022-10-16 15:14:21,467:INFO:--> pretrained_checkpoint: +2022-10-16 15:14:21,467:INFO:--> output_dir: output/train +2022-10-16 15:14:21,467:INFO:--> train_img_dir: dateset/mask/images/train +2022-10-16 15:14:21,467:INFO:--> train_json_file: coco/annotations.json +2022-10-16 15:14:21,467:INFO:--> lr_scheduler: cosine_annealing +2022-10-16 15:14:21,468:INFO:--> lr: 0.01 +2022-10-16 15:14:21,468:INFO:--> lr_epochs: [220, 250] +2022-10-16 15:14:21,468:INFO:--> lr_gamma: 0.1 +2022-10-16 15:14:21,468:INFO:--> eta_min: 0.0 +2022-10-16 15:14:21,468:INFO:--> T_max: 320 +2022-10-16 15:14:21,468:INFO:--> max_epoch: 320 +2022-10-16 15:14:21,468:INFO:--> warmup_epochs: 4 +2022-10-16 15:14:21,468:INFO:--> weight_decay: 0.0005 +2022-10-16 15:14:21,468:INFO:--> momentum: 0.9 +2022-10-16 15:14:21,468:INFO:--> loss_scale: 1024 +2022-10-16 15:14:21,468:INFO:--> label_smooth: 0 +2022-10-16 15:14:21,468:INFO:--> label_smooth_factor: 0.1 +2022-10-16 15:14:21,468:INFO:--> log_interval: 100 +2022-10-16 15:14:21,468:INFO:--> ckpt_path: outputs/ +2022-10-16 15:14:21,468:INFO:--> is_distributed: 0 +2022-10-16 15:14:21,468:INFO:--> bind_cpu: True +2022-10-16 15:14:21,468:INFO:--> device_num: 8 +2022-10-16 15:14:21,468:INFO:--> rank: 0 +2022-10-16 15:14:21,469:INFO:--> group_size: 1 +2022-10-16 15:14:21,469:INFO:--> need_profiler: 0 +2022-10-16 15:14:21,469:INFO:--> resize_rate: 10 +2022-10-16 15:14:21,469:INFO:--> filter_weight: False +2022-10-16 15:14:21,469:INFO:--> pretrained: +2022-10-16 15:14:21,469:INFO:--> log_path: outputs/ +2022-10-16 15:14:21,469:INFO:--> ann_val_file: +2022-10-16 15:14:21,469:INFO:--> eval_nms_thresh: 0.6 +2022-10-16 15:14:21,469:INFO:--> ignore_threshold: 0.7 +2022-10-16 15:14:21,469:INFO:--> test_ignore_threshold: 0.001 +2022-10-16 15:14:21,469:INFO:--> multi_label: True +2022-10-16 15:14:21,469:INFO:--> multi_label_thresh: 0.1 +2022-10-16 15:14:21,469:INFO:--> device_id: 0 +2022-10-16 15:14:21,469:INFO:--> batch_size: 1 +2022-10-16 15:14:21,469:INFO:--> testing_shape: [640, 640] +2022-10-16 15:14:21,469:INFO:--> ckpt_file: +2022-10-16 15:14:21,469:INFO:--> file_name: yolov5 +2022-10-16 15:14:21,470:INFO:--> file_format: MINDIR +2022-10-16 15:14:21,470:INFO:--> dataset_path: +2022-10-16 15:14:21,470:INFO:--> ann_file: +2022-10-16 15:14:21,470:INFO:--> hue: 0.015 +2022-10-16 15:14:21,470:INFO:--> saturation: 1.5 +2022-10-16 15:14:21,470:INFO:--> value: 0.4 +2022-10-16 15:14:21,470:INFO:--> jitter: 0.3 +2022-10-16 15:14:21,470:INFO:--> num_classes: 80 +2022-10-16 15:14:21,470:INFO:--> max_box: 150 +2022-10-16 15:14:21,470:INFO:--> checkpoint_filter_list: ['feature_map.back_block1.conv.weight', 'feature_map.back_block1.conv.bias', 'feature_map.back_block2.conv.weight', 'feature_map.back_block2.conv.bias', 'feature_map.back_block3.conv.weight', 'feature_map.back_block3.conv.bias'] +2022-10-16 15:14:21,470:INFO:--> anchor_scales: [[12, 16], [19, 36], [40, 28], [36, 75], [76, 55], [72, 146], [142, 110], [192, 243], [459, 401]] +2022-10-16 15:14:21,470:INFO:--> out_channel: 255 +2022-10-16 15:14:21,470:INFO:--> input_shape: [[3, 32, 64, 128, 256, 512, 1], [3, 48, 96, 192, 384, 768, 2], [3, 64, 128, 256, 512, 1024, 3], [3, 80, 160, 320, 640, 1280, 4]] +2022-10-16 15:14:21,470:INFO:--> test_img_shape: [640, 640] +2022-10-16 15:14:21,470:INFO:--> labels: ['person', 'bicycle', 'car', 'motorcycle', 'airplane', 'bus', 'train', 'truck', 'boat', 'traffic light', 'fire hydrant', 'stop sign', 'parking meter', 'bench', 'bird', 'cat', 'dog', 'horse', 'sheep', 'cow', 'elephant', 'bear', 'zebra', 'giraffe', 'backpack', 'umbrella', 'handbag', 'tie', 'suitcase', 'frisbee', 'skis', 'snowboard', 'sports ball', 'kite', 'baseball bat', 'baseball glove', 'skateboard', 'surfboard', 'tennis racket', 'bottle', 'wine glass', 'cup', 'fork', 'knife', 'spoon', 'bowl', 'banana', 'apple', 'sandwich', 'orange', 'broccoli', 'carrot', 'hot dog', 'pizza', 'donut', 'cake', 'chair', 'couch', 'potted plant', 'bed', 'dining table', 'toilet', 'tv', 'laptop', 'mouse', 'remote', 'keyboard', 'cell phone', 'microwave', 'oven', 'toaster', 'sink', 'refrigerator', 'book', 'clock', 'vase', 'scissors', 'teddy bear', 'hair drier', 'toothbrush'] +2022-10-16 15:14:21,470:INFO:--> coco_ids: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 27, 28, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 67, 70, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 84, 85, 86, 87, 88, 89, 90] +2022-10-16 15:14:21,470:INFO:--> result_files: ./result_Files +2022-10-16 15:14:21,471:INFO:--> config_path: E:\AI_program\yolo\yolov5\model_utils\../default_config.yaml +2022-10-16 15:14:21,471:INFO:--> data_root: dataset\dataset/mask/images/train +2022-10-16 15:14:21,471:INFO:--> annFile: dataset\coco/annotations.json +2022-10-16 15:14:21,471:INFO:--> logger: +2022-10-16 15:14:21,471:INFO: +2022-10-16 15:14:23,270:INFO:Finish loading dataset diff --git a/yolo_mindspore/output/train/2022-10-16_time_15_17_06_rank_0.log b/yolo_mindspore/output/train/2022-10-16_time_15_17_06_rank_0.log new file mode 100644 index 0000000..51fffb0 --- /dev/null +++ b/yolo_mindspore/output/train/2022-10-16_time_15_17_06_rank_0.log @@ -0,0 +1,79 @@ +2022-10-16 15:17:06,050:INFO:Args: +2022-10-16 15:17:06,050:INFO:--> enable_modelarts: False +2022-10-16 15:17:06,051:INFO:--> data_url: +2022-10-16 15:17:06,051:INFO:--> train_url: dateset/mask/images/train +2022-10-16 15:17:06,051:INFO:--> checkpoint_url: +2022-10-16 15:17:06,052:INFO:--> outputs_url: output/train +2022-10-16 15:17:06,052:INFO:--> data_path: dataset +2022-10-16 15:17:06,052:INFO:--> output_path: output/train +2022-10-16 15:17:06,053:INFO:--> load_path: dateset/mask/images/train +2022-10-16 15:17:06,053:INFO:--> device_target: CPU +2022-10-16 15:17:06,053:INFO:--> need_modelarts_dataset_unzip: True +2022-10-16 15:17:06,054:INFO:--> modelarts_dataset_unzip_name: coco +2022-10-16 15:17:06,056:INFO:--> data_dir: coco +2022-10-16 15:17:06,056:INFO:--> per_batch_size: 8 +2022-10-16 15:17:06,057:INFO:--> yolov5_version: yolov5s +2022-10-16 15:17:06,057:INFO:--> pretrained_backbone: +2022-10-16 15:17:06,057:INFO:--> resume_yolov5: +2022-10-16 15:17:06,057:INFO:--> pretrained_checkpoint: +2022-10-16 15:17:06,058:INFO:--> output_dir: output/train +2022-10-16 15:17:06,058:INFO:--> train_img_dir: dateset/mask/images/train +2022-10-16 15:17:06,058:INFO:--> train_json_file: coco/annotations.json +2022-10-16 15:17:06,059:INFO:--> lr_scheduler: cosine_annealing +2022-10-16 15:17:06,059:INFO:--> lr: 0.01 +2022-10-16 15:17:06,059:INFO:--> lr_epochs: [220, 250] +2022-10-16 15:17:06,060:INFO:--> lr_gamma: 0.1 +2022-10-16 15:17:06,060:INFO:--> eta_min: 0.0 +2022-10-16 15:17:06,060:INFO:--> T_max: 300 +2022-10-16 15:17:06,060:INFO:--> max_epoch: 300 +2022-10-16 15:17:06,061:INFO:--> warmup_epochs: 20 +2022-10-16 15:17:06,061:INFO:--> weight_decay: 0.0005 +2022-10-16 15:17:06,062:INFO:--> momentum: 0.9 +2022-10-16 15:17:06,062:INFO:--> loss_scale: 1024 +2022-10-16 15:17:06,062:INFO:--> label_smooth: 0 +2022-10-16 15:17:06,062:INFO:--> label_smooth_factor: 0.1 +2022-10-16 15:17:06,063:INFO:--> log_interval: 100 +2022-10-16 15:17:06,063:INFO:--> ckpt_path: outputs/ +2022-10-16 15:17:06,063:INFO:--> is_distributed: 0 +2022-10-16 15:17:06,063:INFO:--> bind_cpu: True +2022-10-16 15:17:06,064:INFO:--> device_num: 8 +2022-10-16 15:17:06,064:INFO:--> rank: 0 +2022-10-16 15:17:06,064:INFO:--> group_size: 1 +2022-10-16 15:17:06,065:INFO:--> need_profiler: 0 +2022-10-16 15:17:06,065:INFO:--> resize_rate: 10 +2022-10-16 15:17:06,065:INFO:--> filter_weight: False +2022-10-16 15:17:06,065:INFO:--> pretrained: +2022-10-16 15:17:06,066:INFO:--> log_path: outputs/ +2022-10-16 15:17:06,066:INFO:--> ann_val_file: +2022-10-16 15:17:06,066:INFO:--> eval_nms_thresh: 0.6 +2022-10-16 15:17:06,067:INFO:--> ignore_threshold: 0.7 +2022-10-16 15:17:06,067:INFO:--> test_ignore_threshold: 0.001 +2022-10-16 15:17:06,067:INFO:--> multi_label: True +2022-10-16 15:17:06,067:INFO:--> multi_label_thresh: 0.1 +2022-10-16 15:17:06,068:INFO:--> device_id: 0 +2022-10-16 15:17:06,068:INFO:--> batch_size: 1 +2022-10-16 15:17:06,068:INFO:--> testing_shape: [640, 640] +2022-10-16 15:17:06,069:INFO:--> ckpt_file: +2022-10-16 15:17:06,069:INFO:--> file_name: yolov5 +2022-10-16 15:17:06,069:INFO:--> file_format: MINDIR +2022-10-16 15:17:06,070:INFO:--> dataset_path: +2022-10-16 15:17:06,070:INFO:--> ann_file: +2022-10-16 15:17:06,070:INFO:--> hue: 0.015 +2022-10-16 15:17:06,071:INFO:--> saturation: 1.5 +2022-10-16 15:17:06,071:INFO:--> value: 0.4 +2022-10-16 15:17:06,071:INFO:--> jitter: 0.3 +2022-10-16 15:17:06,071:INFO:--> num_classes: 80 +2022-10-16 15:17:06,072:INFO:--> max_box: 150 +2022-10-16 15:17:06,072:INFO:--> checkpoint_filter_list: ['feature_map.back_block1.conv.weight', 'feature_map.back_block1.conv.bias', 'feature_map.back_block2.conv.weight', 'feature_map.back_block2.conv.bias', 'feature_map.back_block3.conv.weight', 'feature_map.back_block3.conv.bias'] +2022-10-16 15:17:06,072:INFO:--> anchor_scales: [[12, 16], [19, 36], [40, 28], [36, 75], [76, 55], [72, 146], [142, 110], [192, 243], [459, 401]] +2022-10-16 15:17:06,073:INFO:--> out_channel: 255 +2022-10-16 15:17:06,073:INFO:--> input_shape: [[3, 32, 64, 128, 256, 512, 1], [3, 48, 96, 192, 384, 768, 2], [3, 64, 128, 256, 512, 1024, 3], [3, 80, 160, 320, 640, 1280, 4]] +2022-10-16 15:17:06,074:INFO:--> test_img_shape: [640, 640] +2022-10-16 15:17:06,074:INFO:--> labels: ['person', 'bicycle', 'car', 'motorcycle', 'airplane', 'bus', 'train', 'truck', 'boat', 'traffic light', 'fire hydrant', 'stop sign', 'parking meter', 'bench', 'bird', 'cat', 'dog', 'horse', 'sheep', 'cow', 'elephant', 'bear', 'zebra', 'giraffe', 'backpack', 'umbrella', 'handbag', 'tie', 'suitcase', 'frisbee', 'skis', 'snowboard', 'sports ball', 'kite', 'baseball bat', 'baseball glove', 'skateboard', 'surfboard', 'tennis racket', 'bottle', 'wine glass', 'cup', 'fork', 'knife', 'spoon', 'bowl', 'banana', 'apple', 'sandwich', 'orange', 'broccoli', 'carrot', 'hot dog', 'pizza', 'donut', 'cake', 'chair', 'couch', 'potted plant', 'bed', 'dining table', 'toilet', 'tv', 'laptop', 'mouse', 'remote', 'keyboard', 'cell phone', 'microwave', 'oven', 'toaster', 'sink', 'refrigerator', 'book', 'clock', 'vase', 'scissors', 'teddy bear', 'hair drier', 'toothbrush'] +2022-10-16 15:17:06,076:INFO:--> coco_ids: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 27, 28, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 67, 70, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 84, 85, 86, 87, 88, 89, 90] +2022-10-16 15:17:06,077:INFO:--> result_files: ./result_Files +2022-10-16 15:17:06,077:INFO:--> config_path: e:\AI_program\yolo\yolov5\model_utils\../default_config.yaml +2022-10-16 15:17:06,078:INFO:--> data_root: coco\dataset/mask/images/train +2022-10-16 15:17:06,078:INFO:--> annFile: coco\coco/annotations.json +2022-10-16 15:17:06,078:INFO:--> logger: +2022-10-16 15:17:06,079:INFO: diff --git a/yolo_mindspore/output/train/2022-10-16_time_15_18_41_rank_0.log b/yolo_mindspore/output/train/2022-10-16_time_15_18_41_rank_0.log new file mode 100644 index 0000000..1791ea8 --- /dev/null +++ b/yolo_mindspore/output/train/2022-10-16_time_15_18_41_rank_0.log @@ -0,0 +1,80 @@ +2022-10-16 15:18:41,275:INFO:Args: +2022-10-16 15:18:41,276:INFO:--> enable_modelarts: False +2022-10-16 15:18:41,276:INFO:--> data_url: +2022-10-16 15:18:41,276:INFO:--> train_url: +2022-10-16 15:18:41,277:INFO:--> checkpoint_url: +2022-10-16 15:18:41,277:INFO:--> outputs_url: +2022-10-16 15:18:41,277:INFO:--> data_path: dataset +2022-10-16 15:18:41,278:INFO:--> output_path: output/train +2022-10-16 15:18:41,278:INFO:--> load_path: dateset/mask/images/train +2022-10-16 15:18:41,278:INFO:--> device_target: CPU +2022-10-16 15:18:41,279:INFO:--> need_modelarts_dataset_unzip: True +2022-10-16 15:18:41,279:INFO:--> modelarts_dataset_unzip_name: coco +2022-10-16 15:18:41,279:INFO:--> data_dir: +2022-10-16 15:18:41,280:INFO:--> per_batch_size: 8 +2022-10-16 15:18:41,281:INFO:--> yolov5_version: yolov5s +2022-10-16 15:18:41,281:INFO:--> pretrained_backbone: +2022-10-16 15:18:41,281:INFO:--> resume_yolov5: +2022-10-16 15:18:41,281:INFO:--> pretrained_checkpoint: +2022-10-16 15:18:41,282:INFO:--> output_dir: output/train +2022-10-16 15:18:41,282:INFO:--> train_img_dir: dateset/mask/images/train +2022-10-16 15:18:41,282:INFO:--> train_json_file: coco/annotations.json +2022-10-16 15:18:41,283:INFO:--> lr_scheduler: cosine_annealing +2022-10-16 15:18:41,285:INFO:--> lr: 0.01 +2022-10-16 15:18:41,286:INFO:--> lr_epochs: [220, 250] +2022-10-16 15:18:41,286:INFO:--> lr_gamma: 0.1 +2022-10-16 15:18:41,287:INFO:--> eta_min: 0.0 +2022-10-16 15:18:41,287:INFO:--> T_max: 300 +2022-10-16 15:18:41,287:INFO:--> max_epoch: 300 +2022-10-16 15:18:41,288:INFO:--> warmup_epochs: 20 +2022-10-16 15:18:41,288:INFO:--> weight_decay: 0.0005 +2022-10-16 15:18:41,288:INFO:--> momentum: 0.9 +2022-10-16 15:18:41,289:INFO:--> loss_scale: 1024 +2022-10-16 15:18:41,289:INFO:--> label_smooth: 0 +2022-10-16 15:18:41,289:INFO:--> label_smooth_factor: 0.1 +2022-10-16 15:18:41,290:INFO:--> log_interval: 100 +2022-10-16 15:18:41,290:INFO:--> ckpt_path: outputs/ +2022-10-16 15:18:41,290:INFO:--> is_distributed: 0 +2022-10-16 15:18:41,291:INFO:--> bind_cpu: True +2022-10-16 15:18:41,291:INFO:--> device_num: 8 +2022-10-16 15:18:41,291:INFO:--> rank: 0 +2022-10-16 15:18:41,292:INFO:--> group_size: 1 +2022-10-16 15:18:41,292:INFO:--> need_profiler: 0 +2022-10-16 15:18:41,292:INFO:--> resize_rate: 10 +2022-10-16 15:18:41,292:INFO:--> filter_weight: False +2022-10-16 15:18:41,292:INFO:--> pretrained: +2022-10-16 15:18:41,292:INFO:--> log_path: outputs/ +2022-10-16 15:18:41,293:INFO:--> ann_val_file: +2022-10-16 15:18:41,293:INFO:--> eval_nms_thresh: 0.6 +2022-10-16 15:18:41,293:INFO:--> ignore_threshold: 0.7 +2022-10-16 15:18:41,294:INFO:--> test_ignore_threshold: 0.001 +2022-10-16 15:18:41,294:INFO:--> multi_label: True +2022-10-16 15:18:41,294:INFO:--> multi_label_thresh: 0.1 +2022-10-16 15:18:41,294:INFO:--> device_id: 0 +2022-10-16 15:18:41,295:INFO:--> batch_size: 1 +2022-10-16 15:18:41,295:INFO:--> testing_shape: [640, 640] +2022-10-16 15:18:41,296:INFO:--> ckpt_file: +2022-10-16 15:18:41,296:INFO:--> file_name: yolov5 +2022-10-16 15:18:41,296:INFO:--> file_format: MINDIR +2022-10-16 15:18:41,296:INFO:--> dataset_path: +2022-10-16 15:18:41,297:INFO:--> ann_file: +2022-10-16 15:18:41,297:INFO:--> hue: 0.015 +2022-10-16 15:18:41,297:INFO:--> saturation: 1.5 +2022-10-16 15:18:41,298:INFO:--> value: 0.4 +2022-10-16 15:18:41,298:INFO:--> jitter: 0.3 +2022-10-16 15:18:41,298:INFO:--> num_classes: 80 +2022-10-16 15:18:41,299:INFO:--> max_box: 150 +2022-10-16 15:18:41,299:INFO:--> checkpoint_filter_list: ['feature_map.back_block1.conv.weight', 'feature_map.back_block1.conv.bias', 'feature_map.back_block2.conv.weight', 'feature_map.back_block2.conv.bias', 'feature_map.back_block3.conv.weight', 'feature_map.back_block3.conv.bias'] +2022-10-16 15:18:41,299:INFO:--> anchor_scales: [[12, 16], [19, 36], [40, 28], [36, 75], [76, 55], [72, 146], [142, 110], [192, 243], [459, 401]] +2022-10-16 15:18:41,300:INFO:--> out_channel: 255 +2022-10-16 15:18:41,300:INFO:--> input_shape: [[3, 32, 64, 128, 256, 512, 1], [3, 48, 96, 192, 384, 768, 2], [3, 64, 128, 256, 512, 1024, 3], [3, 80, 160, 320, 640, 1280, 4]] +2022-10-16 15:18:41,301:INFO:--> test_img_shape: [640, 640] +2022-10-16 15:18:41,302:INFO:--> labels: ['person', 'bicycle', 'car', 'motorcycle', 'airplane', 'bus', 'train', 'truck', 'boat', 'traffic light', 'fire hydrant', 'stop sign', 'parking meter', 'bench', 'bird', 'cat', 'dog', 'horse', 'sheep', 'cow', 'elephant', 'bear', 'zebra', 'giraffe', 'backpack', 'umbrella', 'handbag', 'tie', 'suitcase', 'frisbee', 'skis', 'snowboard', 'sports ball', 'kite', 'baseball bat', 'baseball glove', 'skateboard', 'surfboard', 'tennis racket', 'bottle', 'wine glass', 'cup', 'fork', 'knife', 'spoon', 'bowl', 'banana', 'apple', 'sandwich', 'orange', 'broccoli', 'carrot', 'hot dog', 'pizza', 'donut', 'cake', 'chair', 'couch', 'potted plant', 'bed', 'dining table', 'toilet', 'tv', 'laptop', 'mouse', 'remote', 'keyboard', 'cell phone', 'microwave', 'oven', 'toaster', 'sink', 'refrigerator', 'book', 'clock', 'vase', 'scissors', 'teddy bear', 'hair drier', 'toothbrush'] +2022-10-16 15:18:41,303:INFO:--> coco_ids: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 27, 28, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 67, 70, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 84, 85, 86, 87, 88, 89, 90] +2022-10-16 15:18:41,304:INFO:--> result_files: ./result_Files +2022-10-16 15:18:41,304:INFO:--> config_path: e:\AI_program\yolo\yolov5\model_utils\../default_config.yaml +2022-10-16 15:18:41,304:INFO:--> data_root: dataset/mask/images/train +2022-10-16 15:18:41,304:INFO:--> annFile: coco/annotations.json +2022-10-16 15:18:41,305:INFO:--> logger: +2022-10-16 15:18:41,305:INFO: +2022-10-16 15:18:42,855:INFO:Finish loading dataset diff --git a/yolo_mindspore/output/train/2022-10-16_time_15_20_11_rank_0.log b/yolo_mindspore/output/train/2022-10-16_time_15_20_11_rank_0.log new file mode 100644 index 0000000..ee09a3e --- /dev/null +++ b/yolo_mindspore/output/train/2022-10-16_time_15_20_11_rank_0.log @@ -0,0 +1 @@ +2022-10-16 15:20:11,353:INFO:Creating Network.... diff --git a/yolo_mindspore/output/train/2022-10-16_time_15_31_17_rank_0.log b/yolo_mindspore/output/train/2022-10-16_time_15_31_17_rank_0.log new file mode 100644 index 0000000..f88be96 --- /dev/null +++ b/yolo_mindspore/output/train/2022-10-16_time_15_31_17_rank_0.log @@ -0,0 +1,80 @@ +2022-10-16 15:31:17,463:INFO:Args: +2022-10-16 15:31:17,464:INFO:--> enable_modelarts: False +2022-10-16 15:31:17,464:INFO:--> data_url: +2022-10-16 15:31:17,464:INFO:--> train_url: +2022-10-16 15:31:17,465:INFO:--> checkpoint_url: +2022-10-16 15:31:17,465:INFO:--> outputs_url: +2022-10-16 15:31:17,465:INFO:--> data_path: dataset +2022-10-16 15:31:17,466:INFO:--> output_path: output/train +2022-10-16 15:31:17,466:INFO:--> load_path: dateset/mask/images/train +2022-10-16 15:31:17,466:INFO:--> device_target: CPU +2022-10-16 15:31:17,467:INFO:--> need_modelarts_dataset_unzip: True +2022-10-16 15:31:17,467:INFO:--> modelarts_dataset_unzip_name: coco +2022-10-16 15:31:17,467:INFO:--> data_dir: dataset +2022-10-16 15:31:17,550:INFO:--> per_batch_size: 8 +2022-10-16 15:31:17,551:INFO:--> yolov5_version: yolov5s +2022-10-16 15:31:17,551:INFO:--> pretrained_backbone: +2022-10-16 15:31:17,552:INFO:--> resume_yolov5: +2022-10-16 15:31:17,552:INFO:--> pretrained_checkpoint: +2022-10-16 15:31:17,552:INFO:--> output_dir: output/train +2022-10-16 15:31:17,553:INFO:--> train_img_dir: dateset/mask/images/train +2022-10-16 15:31:17,553:INFO:--> train_json_file: coco/annotations.json +2022-10-16 15:31:17,553:INFO:--> lr_scheduler: cosine_annealing +2022-10-16 15:31:17,554:INFO:--> lr: 0.01 +2022-10-16 15:31:17,554:INFO:--> lr_epochs: [220, 250] +2022-10-16 15:31:17,554:INFO:--> lr_gamma: 0.1 +2022-10-16 15:31:17,555:INFO:--> eta_min: 0.0 +2022-10-16 15:31:17,555:INFO:--> T_max: 300 +2022-10-16 15:31:17,555:INFO:--> max_epoch: 300 +2022-10-16 15:31:17,555:INFO:--> warmup_epochs: 20 +2022-10-16 15:31:17,556:INFO:--> weight_decay: 0.0005 +2022-10-16 15:31:17,556:INFO:--> momentum: 0.9 +2022-10-16 15:31:17,556:INFO:--> loss_scale: 1024 +2022-10-16 15:31:17,557:INFO:--> label_smooth: 0 +2022-10-16 15:31:17,557:INFO:--> label_smooth_factor: 0.1 +2022-10-16 15:31:17,557:INFO:--> log_interval: 100 +2022-10-16 15:31:17,557:INFO:--> ckpt_path: outputs/ +2022-10-16 15:31:17,558:INFO:--> is_distributed: 0 +2022-10-16 15:31:17,558:INFO:--> bind_cpu: True +2022-10-16 15:31:17,558:INFO:--> device_num: 8 +2022-10-16 15:31:17,559:INFO:--> rank: 0 +2022-10-16 15:31:17,559:INFO:--> group_size: 1 +2022-10-16 15:31:17,560:INFO:--> need_profiler: 0 +2022-10-16 15:31:17,560:INFO:--> resize_rate: 10 +2022-10-16 15:31:17,561:INFO:--> filter_weight: False +2022-10-16 15:31:17,561:INFO:--> pretrained: +2022-10-16 15:31:17,561:INFO:--> log_path: outputs/ +2022-10-16 15:31:17,562:INFO:--> ann_val_file: +2022-10-16 15:31:17,562:INFO:--> eval_nms_thresh: 0.6 +2022-10-16 15:31:17,562:INFO:--> ignore_threshold: 0.7 +2022-10-16 15:31:17,562:INFO:--> test_ignore_threshold: 0.001 +2022-10-16 15:31:17,563:INFO:--> multi_label: True +2022-10-16 15:31:17,563:INFO:--> multi_label_thresh: 0.1 +2022-10-16 15:31:17,563:INFO:--> device_id: 0 +2022-10-16 15:31:17,564:INFO:--> batch_size: 1 +2022-10-16 15:31:17,564:INFO:--> testing_shape: [640, 640] +2022-10-16 15:31:17,564:INFO:--> ckpt_file: +2022-10-16 15:31:17,565:INFO:--> file_name: yolov5 +2022-10-16 15:31:17,565:INFO:--> file_format: MINDIR +2022-10-16 15:31:17,565:INFO:--> dataset_path: +2022-10-16 15:31:17,566:INFO:--> ann_file: +2022-10-16 15:31:17,566:INFO:--> hue: 0.015 +2022-10-16 15:31:17,566:INFO:--> saturation: 1.5 +2022-10-16 15:31:17,567:INFO:--> value: 0.4 +2022-10-16 15:31:17,567:INFO:--> jitter: 0.3 +2022-10-16 15:31:17,567:INFO:--> num_classes: 80 +2022-10-16 15:31:17,568:INFO:--> max_box: 150 +2022-10-16 15:31:17,568:INFO:--> checkpoint_filter_list: ['feature_map.back_block1.conv.weight', 'feature_map.back_block1.conv.bias', 'feature_map.back_block2.conv.weight', 'feature_map.back_block2.conv.bias', 'feature_map.back_block3.conv.weight', 'feature_map.back_block3.conv.bias'] +2022-10-16 15:31:17,568:INFO:--> anchor_scales: [[12, 16], [19, 36], [40, 28], [36, 75], [76, 55], [72, 146], [142, 110], [192, 243], [459, 401]] +2022-10-16 15:31:17,569:INFO:--> out_channel: 255 +2022-10-16 15:31:17,569:INFO:--> input_shape: [[3, 32, 64, 128, 256, 512, 1], [3, 48, 96, 192, 384, 768, 2], [3, 64, 128, 256, 512, 1024, 3], [3, 80, 160, 320, 640, 1280, 4]] +2022-10-16 15:31:17,570:INFO:--> test_img_shape: [640, 640] +2022-10-16 15:31:17,570:INFO:--> labels: ['person', 'bicycle', 'car', 'motorcycle', 'airplane', 'bus', 'train', 'truck', 'boat', 'traffic light', 'fire hydrant', 'stop sign', 'parking meter', 'bench', 'bird', 'cat', 'dog', 'horse', 'sheep', 'cow', 'elephant', 'bear', 'zebra', 'giraffe', 'backpack', 'umbrella', 'handbag', 'tie', 'suitcase', 'frisbee', 'skis', 'snowboard', 'sports ball', 'kite', 'baseball bat', 'baseball glove', 'skateboard', 'surfboard', 'tennis racket', 'bottle', 'wine glass', 'cup', 'fork', 'knife', 'spoon', 'bowl', 'banana', 'apple', 'sandwich', 'orange', 'broccoli', 'carrot', 'hot dog', 'pizza', 'donut', 'cake', 'chair', 'couch', 'potted plant', 'bed', 'dining table', 'toilet', 'tv', 'laptop', 'mouse', 'remote', 'keyboard', 'cell phone', 'microwave', 'oven', 'toaster', 'sink', 'refrigerator', 'book', 'clock', 'vase', 'scissors', 'teddy bear', 'hair drier', 'toothbrush'] +2022-10-16 15:31:17,571:INFO:--> coco_ids: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 27, 28, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 67, 70, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 84, 85, 86, 87, 88, 89, 90] +2022-10-16 15:31:17,572:INFO:--> result_files: ./result_Files +2022-10-16 15:31:17,572:INFO:--> config_path: e:\AI_program\yolo\yolov5\model_utils\../default_config.yaml +2022-10-16 15:31:17,572:INFO:--> data_root: dataset\dataset/mask/images/train +2022-10-16 15:31:17,573:INFO:--> annFile: dataset\coco/annotations.json +2022-10-16 15:31:17,573:INFO:--> logger: +2022-10-16 15:31:17,573:INFO: +2022-10-16 15:31:19,201:INFO:Finish loading dataset diff --git a/yolov5/postprocess.py b/yolo_mindspore/postprocess.py similarity index 100% rename from yolov5/postprocess.py rename to yolo_mindspore/postprocess.py diff --git a/yolo_mindspore/requirements.txt b/yolo_mindspore/requirements.txt new file mode 100644 index 0000000..c656946 --- /dev/null +++ b/yolo_mindspore/requirements.txt @@ -0,0 +1,9 @@ +numpy +pillow +opencv-python +pycocotools +onnxruntime-gpu +matplotlib +PyYAML +tqdm +mindspore \ No newline at end of file diff --git a/yolov5/scripts/docker_start.sh b/yolo_mindspore/scripts/docker_start.sh similarity index 100% rename from yolov5/scripts/docker_start.sh rename to yolo_mindspore/scripts/docker_start.sh diff --git a/yolo_mindspore/scripts/run_distribute_train.sh b/yolo_mindspore/scripts/run_distribute_train.sh new file mode 100644 index 0000000..cb38aae --- /dev/null +++ b/yolo_mindspore/scripts/run_distribute_train.sh @@ -0,0 +1,78 @@ +#!/bin/bash +# Copyright 2021 Huawei Technologies Co., Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================ + +if [ $# != 2 ] +then + echo "Usage: bash run_distribute_train.sh [DATASET_PATH] [RANK_TABLE_FILE]" +exit 1 +fi + +get_real_path(){ + if [ "${1:0:1}" == "/" ]; then + echo "$1" + else + echo "$(realpath -m $PWD/$1)" + fi +} + +DATASET_PATH=$(get_real_path $1) +RANK_TABLE_FILE=$(get_real_path $2) +echo $DATASET_PATH +echo $RANK_TABLE_FILE + +if [ ! -d $DATASET_PATH ] +then + echo "error: DATASET_PATH=$DATASET_PATH is not a directory" +exit 1 +fi + +if [ ! -f $RANK_TABLE_FILE ] +then + echo "error: RANK_TABLE_FILE=$RANK_TABLE_FILE is not a file" +exit 1 +fi + +export DEVICE_NUM=8 +export RANK_SIZE=8 +export RANK_TABLE_FILE=$RANK_TABLE_FILE + +cpus=`cat /proc/cpuinfo| grep "processor"| wc -l` +avg=`expr $cpus \/ $DEVICE_NUM` +gap=`expr $avg \- 1` + +for((i=0; i<${DEVICE_NUM}; i++)) +do + start=`expr $i \* $avg` + end=`expr $start \+ $gap` + cmdopt=$start"-"$end + export DEVICE_ID=$i + export RANK_ID=$i + rm -rf ./train_parallel$i + mkdir ./train_parallel$i + cp ../*.py ./train_parallel$i + cp ../*.yaml ./train_parallel$i + cp -r ../src ./train_parallel$i + cp -r ../model_utils ./train_parallel$i + cd ./train_parallel$i || exit + echo "start training for rank $RANK_ID, device $DEVICE_ID" + env > env.log + taskset -c $cmdopt python train.py \ + --data_dir=$DATASET_PATH \ + --is_distributed=1 \ + --lr=0.02 \ + --per_batch_size=16 > log.txt 2>&1 & + cd .. +done diff --git a/yolov5/scripts/run_distribute_train_gpu.sh b/yolo_mindspore/scripts/run_distribute_train_gpu.sh similarity index 100% rename from yolov5/scripts/run_distribute_train_gpu.sh rename to yolo_mindspore/scripts/run_distribute_train_gpu.sh diff --git a/yolov5/scripts/run_eval.sh b/yolo_mindspore/scripts/run_eval.sh similarity index 100% rename from yolov5/scripts/run_eval.sh rename to yolo_mindspore/scripts/run_eval.sh diff --git a/yolov5/scripts/run_eval_onnx.sh b/yolo_mindspore/scripts/run_eval_onnx.sh similarity index 100% rename from yolov5/scripts/run_eval_onnx.sh rename to yolo_mindspore/scripts/run_eval_onnx.sh diff --git a/yolo_mindspore/scripts/run_infer_310.sh b/yolo_mindspore/scripts/run_infer_310.sh new file mode 100644 index 0000000..b3ebc6d --- /dev/null +++ b/yolo_mindspore/scripts/run_infer_310.sh @@ -0,0 +1,104 @@ +#!/bin/bash +# Copyright 2021 Huawei Technologies Co., Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================ + +if [[ $# -lt 4 || $# -gt 5 ]]; then + echo "Usage: bash run_infer_310.sh [MINDIR_PATH] [DATA_PATH] [ANN_FILE] [DVPP] [DEVICE_ID] + DVPP is mandatory, and must choose from [DVPP|CPU], it's case-insensitive + DEVICE_ID is optional, it can be set by environment variable device_id, otherwise the value is zero" +exit 1 +fi + +get_real_path(){ + if [ "${1:0:1}" == "/" ]; then + echo "$1" + else + echo "$(realpath -m $PWD/$1)" + fi +} +model=$(get_real_path $1) +data_path=$(get_real_path $2) +ann_file=$(get_real_path $3) +DVPP=${4^^} + +device_id=0 +if [ $# == 5 ]; then + device_id=$5 +fi + +echo "mindir name: "$model +echo "dataset path: "$data_path +echo "ann file: "$ann_file +echo "image process mode: "$DVPP +echo "device id: "$device_id + +export ASCEND_HOME=/usr/local/Ascend/ +if [ -d ${ASCEND_HOME}/ascend-toolkit ]; then + export ASCEND_HOME=/usr/local/Ascend/ascend-toolkit/latest +else + export ASCEND_HOME=/usr/local/Ascend/latest +fi +export PATH=$ASCEND_HOME/compiler/ccec_compiler/bin:$PATH +export LD_LIBRARY_PATH=$ASCEND_HOME/lib64:/usr/local/Ascend/driver/lib64:$LD_LIBRARY_PATH +export ASCEND_OPP_PATH=$ASCEND_HOME/opp + +function compile_app() +{ + cd ../ascend310_infer || exit + bash build.sh &> build.log +} + +function infer() +{ + cd - || exit + if [ -d result_Files ]; then + rm -rf ./result_Files + fi + if [ -d time_Result ]; then + rm -rf ./time_Result + fi + mkdir result_Files + mkdir time_Result + if [ "$DVPP" == "DVPP" ];then + echo "Only support CPU mode" + exit 1 + elif [ "$DVPP" == "CPU" ]; then + ../ascend310_infer/out/main --mindir_path=$model --dataset_path=$data_path --device_id=$device_id --image_height=640 --image_width=640 &> infer.log + else + echo "image process mode must be in [DVPP|CPU]" + exit 1 + fi +} + +function cal_acc() +{ + python ../postprocess.py --result_files=./result_Files --dataset_path=$data_path --ann_file=$ann_file &> acc.log & +} + +compile_app +if [ $? -ne 0 ]; then + echo "compile app code failed" + exit 1 +fi +infer +if [ $? -ne 0 ]; then + echo " execute inference failed" + exit 1 +fi +cal_acc +if [ $? -ne 0 ]; then + echo "calculate accuracy failed" + exit 1 +fi \ No newline at end of file diff --git a/yolov5/scripts/run_standalone_train.sh b/yolo_mindspore/scripts/run_standalone_train.sh similarity index 100% rename from yolov5/scripts/run_standalone_train.sh rename to yolo_mindspore/scripts/run_standalone_train.sh diff --git a/yolov5/src/__init__.py b/yolo_mindspore/src/__init__.py similarity index 100% rename from yolov5/src/__init__.py rename to yolo_mindspore/src/__init__.py diff --git a/yolo_mindspore/src/__pycache__/__init__.cpython-38.pyc b/yolo_mindspore/src/__pycache__/__init__.cpython-38.pyc new file mode 100644 index 0000000..30dd470 Binary files /dev/null and b/yolo_mindspore/src/__pycache__/__init__.cpython-38.pyc differ diff --git a/yolo_mindspore/src/__pycache__/backbone.cpython-38.pyc b/yolo_mindspore/src/__pycache__/backbone.cpython-38.pyc new file mode 100644 index 0000000..4650fa9 Binary files /dev/null and b/yolo_mindspore/src/__pycache__/backbone.cpython-38.pyc differ diff --git a/yolo_mindspore/src/__pycache__/distributed_sampler.cpython-38.pyc b/yolo_mindspore/src/__pycache__/distributed_sampler.cpython-38.pyc new file mode 100644 index 0000000..82cea37 Binary files /dev/null and b/yolo_mindspore/src/__pycache__/distributed_sampler.cpython-38.pyc differ diff --git a/yolo_mindspore/src/__pycache__/initializer.cpython-38.pyc b/yolo_mindspore/src/__pycache__/initializer.cpython-38.pyc new file mode 100644 index 0000000..3d37b0c Binary files /dev/null and b/yolo_mindspore/src/__pycache__/initializer.cpython-38.pyc differ diff --git a/yolo_mindspore/src/__pycache__/logger.cpython-38.pyc b/yolo_mindspore/src/__pycache__/logger.cpython-38.pyc new file mode 100644 index 0000000..34dc797 Binary files /dev/null and b/yolo_mindspore/src/__pycache__/logger.cpython-38.pyc differ diff --git a/yolo_mindspore/src/__pycache__/loss.cpython-38.pyc b/yolo_mindspore/src/__pycache__/loss.cpython-38.pyc new file mode 100644 index 0000000..7b255a6 Binary files /dev/null and b/yolo_mindspore/src/__pycache__/loss.cpython-38.pyc differ diff --git a/yolo_mindspore/src/__pycache__/lr_scheduler.cpython-38.pyc b/yolo_mindspore/src/__pycache__/lr_scheduler.cpython-38.pyc new file mode 100644 index 0000000..626adaa Binary files /dev/null and b/yolo_mindspore/src/__pycache__/lr_scheduler.cpython-38.pyc differ diff --git a/yolo_mindspore/src/__pycache__/transforms.cpython-38.pyc b/yolo_mindspore/src/__pycache__/transforms.cpython-38.pyc new file mode 100644 index 0000000..6c26a69 Binary files /dev/null and b/yolo_mindspore/src/__pycache__/transforms.cpython-38.pyc differ diff --git a/yolo_mindspore/src/__pycache__/util.cpython-38.pyc b/yolo_mindspore/src/__pycache__/util.cpython-38.pyc new file mode 100644 index 0000000..275ca5c Binary files /dev/null and b/yolo_mindspore/src/__pycache__/util.cpython-38.pyc differ diff --git a/yolo_mindspore/src/__pycache__/yolo.cpython-38.pyc b/yolo_mindspore/src/__pycache__/yolo.cpython-38.pyc new file mode 100644 index 0000000..6597047 Binary files /dev/null and b/yolo_mindspore/src/__pycache__/yolo.cpython-38.pyc differ diff --git a/yolo_mindspore/src/__pycache__/yolo_dataset.cpython-38.pyc b/yolo_mindspore/src/__pycache__/yolo_dataset.cpython-38.pyc new file mode 100644 index 0000000..96c4801 Binary files /dev/null and b/yolo_mindspore/src/__pycache__/yolo_dataset.cpython-38.pyc differ diff --git a/yolov5/src/backbone.py b/yolo_mindspore/src/backbone.py similarity index 100% rename from yolov5/src/backbone.py rename to yolo_mindspore/src/backbone.py diff --git a/yolov5/src/distributed_sampler.py b/yolo_mindspore/src/distributed_sampler.py similarity index 100% rename from yolov5/src/distributed_sampler.py rename to yolo_mindspore/src/distributed_sampler.py diff --git a/yolov5/src/initializer.py b/yolo_mindspore/src/initializer.py similarity index 100% rename from yolov5/src/initializer.py rename to yolo_mindspore/src/initializer.py diff --git a/yolov5/src/logger.py b/yolo_mindspore/src/logger.py similarity index 100% rename from yolov5/src/logger.py rename to yolo_mindspore/src/logger.py diff --git a/yolov5/src/loss.py b/yolo_mindspore/src/loss.py similarity index 100% rename from yolov5/src/loss.py rename to yolo_mindspore/src/loss.py diff --git a/yolov5/src/lr_scheduler.py b/yolo_mindspore/src/lr_scheduler.py similarity index 100% rename from yolov5/src/lr_scheduler.py rename to yolo_mindspore/src/lr_scheduler.py diff --git a/yolo_mindspore/src/transforms.py b/yolo_mindspore/src/transforms.py new file mode 100644 index 0000000..2bfac87 --- /dev/null +++ b/yolo_mindspore/src/transforms.py @@ -0,0 +1,605 @@ +# Copyright 2021-2022 Huawei Technologies Co., Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================ +"""Preprocess dataset.""" +import random +import threading +import copy + +import numpy as np +from PIL import Image +import cv2 +import mindspore.dataset.vision as vision + + +def _rand(a=0., b=1.): + return np.random.rand() * (b - a) + a + + +def bbox_iou(bbox_a, bbox_b, offset=0): + """Calculate Intersection-Over-Union(IOU) of two bounding boxes. + + Parameters + ---------- + bbox_a : numpy.ndarray + An ndarray with shape :math:`(N, 4)`. + bbox_b : numpy.ndarray + An ndarray with shape :math:`(M, 4)`. + offset : float or int, default is 0 + The ``offset`` is used to control the whether the width(or height) is computed as + (right - left + ``offset``). + Note that the offset must be 0 for normalized bboxes, whose ranges are in ``[0, 1]``. + + Returns + ------- + numpy.ndarray + An ndarray with shape :math:`(N, M)` indicates IOU between each pairs of + bounding boxes in `bbox_a` and `bbox_b`. + + """ + if bbox_a.shape[1] < 4 or bbox_b.shape[1] < 4: + raise IndexError("Bounding boxes axis 1 must have at least length 4") + + tl = np.maximum(bbox_a[:, None, :2], bbox_b[:, :2]) + br = np.minimum(bbox_a[:, None, 2:4], bbox_b[:, 2:4]) + + area_i = np.prod(br - tl + offset, axis=2) * (tl < br).all(axis=2) + area_a = np.prod(bbox_a[:, 2:4] - bbox_a[:, :2] + offset, axis=1) + area_b = np.prod(bbox_b[:, 2:4] - bbox_b[:, :2] + offset, axis=1) + return area_i / (area_a[:, None] + area_b - area_i) + + +def statistic_normalize_img(img, statistic_norm): + """Statistic normalize images.""" + # img: RGB + if isinstance(img, Image.Image): + img = np.array(img) + img = img / 255. + # Computed from random subset of ImageNet training images + mean = np.array([0.485, 0.456, 0.406]) + std = np.array([0.229, 0.224, 0.225]) + if statistic_norm: + img = (img - mean) / std + return img + + +def get_interp_method(interp, sizes=()): + """ + Get the interpolation method for resize functions. + The major purpose of this function is to wrap a random interp method selection + and a auto-estimation method. + + Note: + When shrinking an image, it will generally look best with AREA-based + interpolation, whereas, when enlarging an image, it will generally look best + with Bicubic or Bilinear. + + Args: + interp (int): Interpolation method for all resizing operations. + + - 0: Nearest Neighbors Interpolation. + - 1: Bilinear interpolation. + - 2: Bicubic interpolation over 4x4 pixel neighborhood. + - 3: Nearest Neighbors. Originally it should be Area-based, as we cannot find Area-based, + so we use NN instead. Area-based (resampling using pixel area relation). + It may be a preferred method for image decimation, as it gives moire-free results. + But when the image is zoomed, it is similar to the Nearest Neighbors method. (used by default). + - 4: Lanczos interpolation over 8x8 pixel neighborhood. + - 9: Cubic for enlarge, area for shrink, bilinear for others. + - 10: Random select from interpolation method mentioned above. + + sizes (tuple): Format should like (old_height, old_width, new_height, new_width), + if None provided, auto(9) will return Area(2) anyway. Default: () + + Returns: + int, interp method from 0 to 4. + """ + if interp == 9: + if sizes: + assert len(sizes) == 4 + oh, ow, nh, nw = sizes + if nh > oh and nw > ow: + return 2 + if nh < oh and nw < ow: + return 0 + return 1 + return 2 + if interp == 10: + return random.randint(0, 4) + if interp not in (0, 1, 2, 3, 4): + raise ValueError('Unknown interp method %d' % interp) + return interp + + +def pil_image_reshape(interp): + """Reshape pil image.""" + reshape_type = { + 0: Image.NEAREST, + 1: Image.BILINEAR, + 2: Image.BICUBIC, + 3: Image.NEAREST, + 4: Image.LANCZOS, + } + return reshape_type[interp] + + +def _preprocess_true_boxes(true_boxes, anchors, in_shape, num_classes, max_boxes, label_smooth, + label_smooth_factor=0.1, iou_threshold=0.213): + """ + Introduction + ------------ + preprocessing ground truth box + Parameters + ---------- + true_boxes: ground truth box shape as [boxes, 5], x_min, y_min, x_max, y_max, class_id + """ + anchors = np.array(anchors) + num_layers = anchors.shape[0] // 3 + anchor_mask = [[6, 7, 8], [3, 4, 5], [0, 1, 2]] + true_boxes = np.array(true_boxes, dtype='float32') + input_shape = np.array(in_shape, dtype='int32') + boxes_xy = (true_boxes[..., 0:2] + true_boxes[..., 2:4]) // 2. + # trans to box center point + boxes_wh = true_boxes[..., 2:4] - true_boxes[..., 0:2] + # input_shape is [h, w] + true_boxes[..., 0:2] = boxes_xy / input_shape[::-1] + true_boxes[..., 2:4] = boxes_wh / input_shape[::-1] + # true_boxes = [xywh] + grid_shapes = [input_shape // 32, input_shape // 16, input_shape // 8] + # grid_shape [h, w] + y_true = [np.zeros((grid_shapes[l][0], grid_shapes[l][1], len(anchor_mask[l]), + 5 + num_classes), dtype='float32') for l in range(num_layers)] + # y_true [gridy, gridx] + anchors = np.expand_dims(anchors, 0) + anchors_max = anchors / 2. + anchors_min = -anchors_max + valid_mask = boxes_wh[..., 0] > 0 + wh = boxes_wh[valid_mask] + if wh.size != 0: + wh = np.expand_dims(wh, -2) + # wh shape[box_num, 1, 2] + boxes_max = wh / 2. + boxes_min = -boxes_max + intersect_min = np.maximum(boxes_min, anchors_min) + intersect_max = np.minimum(boxes_max, anchors_max) + intersect_wh = np.maximum(intersect_max - intersect_min, 0.) + intersect_area = intersect_wh[..., 0] * intersect_wh[..., 1] + box_area = wh[..., 0] * wh[..., 1] + anchor_area = anchors[..., 0] * anchors[..., 1] + iou = intersect_area / (box_area + anchor_area - intersect_area) + + # topk iou + topk = 4 + topk_flag = iou.argsort() + topk_flag = topk_flag >= topk_flag.shape[1] - topk + flag = topk_flag.nonzero() + for index in range(len(flag[0])): + t = flag[0][index] + n = flag[1][index] + if iou[t][n] < iou_threshold: + continue + for l in range(num_layers): + if n in anchor_mask[l]: + i = np.floor(true_boxes[t, 0] * grid_shapes[l][1]).astype('int32') # grid_y + j = np.floor(true_boxes[t, 1] * grid_shapes[l][0]).astype('int32') # grid_x + + k = anchor_mask[l].index(n) + c = true_boxes[t, 4].astype('int32') + y_true[l][j, i, k, 0:4] = true_boxes[t, 0:4] + y_true[l][j, i, k, 4] = 1. + + # lable-smooth + if label_smooth: + sigma = label_smooth_factor / (num_classes - 1) + y_true[l][j, i, k, 5:] = sigma + y_true[l][j, i, k, 5 + c] = 1 - label_smooth_factor + else: + y_true[l][j, i, k, 5 + c] = 1. + # best anchor for gt + best_anchor = np.argmax(iou, axis=-1) + for t, n in enumerate(best_anchor): + for l in range(num_layers): + if n in anchor_mask[l]: + i = np.floor(true_boxes[t, 0] * grid_shapes[l][1]).astype('int32') # grid_y + j = np.floor(true_boxes[t, 1] * grid_shapes[l][0]).astype('int32') # grid_x + + k = anchor_mask[l].index(n) + c = true_boxes[t, 4].astype('int32') + y_true[l][j, i, k, 0:4] = true_boxes[t, 0:4] + y_true[l][j, i, k, 4] = 1. + + # lable-smooth + if label_smooth: + sigma = label_smooth_factor / (num_classes - 1) + y_true[l][j, i, k, 5:] = sigma + y_true[l][j, i, k, 5 + c] = 1 - label_smooth_factor + else: + y_true[l][j, i, k, 5 + c] = 1. + + # pad_gt_boxes for avoiding dynamic shape + pad_gt_box0 = np.zeros(shape=[max_boxes, 4], dtype=np.float32) + pad_gt_box1 = np.zeros(shape=[max_boxes, 4], dtype=np.float32) + pad_gt_box2 = np.zeros(shape=[max_boxes, 4], dtype=np.float32) + + mask0 = np.reshape(y_true[0][..., 4:5], [-1]) + gt_box0 = np.reshape(y_true[0][..., 0:4], [-1, 4]) + # gt_box [boxes, [x,y,w,h]] + gt_box0 = gt_box0[mask0 == 1] + # gt_box0: get all boxes which have object + if gt_box0.shape[0] < max_boxes: + pad_gt_box0[:gt_box0.shape[0]] = gt_box0 + else: + pad_gt_box0 = gt_box0[:max_boxes] + # gt_box0.shape[0]: total number of boxes in gt_box0 + # top N of pad_gt_box0 is real box, and after are pad by zero + + mask1 = np.reshape(y_true[1][..., 4:5], [-1]) + gt_box1 = np.reshape(y_true[1][..., 0:4], [-1, 4]) + gt_box1 = gt_box1[mask1 == 1] + if gt_box1.shape[0] < max_boxes: + pad_gt_box1[:gt_box1.shape[0]] = gt_box1 + else: + pad_gt_box1 = gt_box1[:max_boxes] + + mask2 = np.reshape(y_true[2][..., 4:5], [-1]) + gt_box2 = np.reshape(y_true[2][..., 0:4], [-1, 4]) + + gt_box2 = gt_box2[mask2 == 1] + if gt_box2.shape[0] < max_boxes: + pad_gt_box2[:gt_box2.shape[0]] = gt_box2 + else: + pad_gt_box2 = gt_box2[:max_boxes] + return y_true[0], y_true[1], y_true[2], pad_gt_box0, pad_gt_box1, pad_gt_box2 + + +class PreprocessTrueBox: + def __init__(self, config): + self.anchor_scales = config.anchor_scales + self.num_classes = config.num_classes + self.max_box = config.max_box + self.label_smooth = config.label_smooth + self.label_smooth_factor = config.label_smooth_factor + + def __call__(self, anno, input_shape): + bbox_true_1, bbox_true_2, bbox_true_3, gt_box1, gt_box2, gt_box3 = \ + _preprocess_true_boxes(true_boxes=anno, anchors=self.anchor_scales, in_shape=input_shape, + num_classes=self.num_classes, max_boxes=self.max_box, + label_smooth=self.label_smooth, label_smooth_factor=self.label_smooth_factor) + return anno, np.array(bbox_true_1), np.array(bbox_true_2), np.array(bbox_true_3), \ + np.array(gt_box1), np.array(gt_box2), np.array(gt_box3) + + +def _reshape_data(image, image_size): + """Reshape image.""" + if not isinstance(image, Image.Image): + image = Image.fromarray(image) + ori_w, ori_h = image.size + ori_image_shape = np.array([ori_w, ori_h], np.int32) + # original image shape fir:H sec:W + h, w = image_size + interp = get_interp_method(interp=9, sizes=(ori_h, ori_w, h, w)) + image = image.resize((w, h), pil_image_reshape(interp)) + image_data = statistic_normalize_img(image, statistic_norm=True) + if len(image_data.shape) == 2: + image_data = np.expand_dims(image_data, axis=-1) + image_data = np.concatenate([image_data, image_data, image_data], axis=-1) + image_data = image_data.astype(np.float32) + return image_data, ori_image_shape + + +def color_distortion(img, hue, sat, val, device_num): + """Color distortion.""" + hue = _rand(-hue, hue) + sat = _rand(1, sat) if _rand() < .5 else 1 / _rand(1, sat) + val = _rand(1, val) if _rand() < .5 else 1 / _rand(1, val) + if device_num != 1: + cv2.setNumThreads(1) + x = cv2.cvtColor(img, cv2.COLOR_RGB2HSV_FULL) + x = x / 255. + x[..., 0] += hue + x[..., 0][x[..., 0] > 1] -= 1 + x[..., 0][x[..., 0] < 0] += 1 + x[..., 1] *= sat + x[..., 2] *= val + x[x > 1] = 1 + x[x < 0] = 0 + x = x * 255. + x = x.astype(np.uint8) + image_data = cv2.cvtColor(x, cv2.COLOR_HSV2RGB_FULL) + return image_data + + +def filp_pil_image(img): + return img.transpose(Image.FLIP_LEFT_RIGHT) + + +def convert_gray_to_color(img): + if len(img.shape) == 2: + img = np.expand_dims(img, axis=-1) + img = np.concatenate([img, img, img], axis=-1) + return img + + +def _is_iou_satisfied_constraint(min_iou, max_iou, box, crop_box): + iou = bbox_iou(box, crop_box) + return min_iou <= iou.min() and max_iou >= iou.max() + + +def _choose_candidate_by_constraints(max_trial, input_w, input_h, image_w, image_h, jitter, box, use_constraints): + """Choose candidate by constraints.""" + if use_constraints: + constraints = ( + (0.1, None), + (0.3, None), + (0.5, None), + (0.7, None), + (0.9, None), + (None, 1), + ) + else: + constraints = ((None, None),) + # add default candidate + candidates = [(0, 0, input_w, input_h)] + for constraint in constraints: + min_iou, max_iou = constraint + min_iou = -np.inf if min_iou is None else min_iou + max_iou = np.inf if max_iou is None else max_iou + + for _ in range(max_trial): + # box_data should have at least one box + new_ar = float(input_w) / float(input_h) * _rand(1 - jitter, 1 + jitter) / _rand(1 - jitter, 1 + jitter) + scale = _rand(0.5, 2) + + if new_ar < 1: + nh = int(scale * input_h) + nw = int(nh * new_ar) + else: + nw = int(scale * input_w) + nh = int(nw / new_ar) + + dx = int(_rand(0, input_w - nw)) + dy = int(_rand(0, input_h - nh)) + + if box.size > 0: + t_box = copy.deepcopy(box) + t_box[:, [0, 2]] = t_box[:, [0, 2]] * float(nw) / float(image_w) + dx + t_box[:, [1, 3]] = t_box[:, [1, 3]] * float(nh) / float(image_h) + dy + + crop_box = np.array((0, 0, input_w, input_h)) + if not _is_iou_satisfied_constraint(min_iou, max_iou, t_box, crop_box[np.newaxis]): + continue + else: + candidates.append((dx, dy, nw, nh)) + else: + raise Exception("!!! annotation box is less than 1") + return candidates + + +def _correct_bbox_by_candidates(candidates, input_w, input_h, image_w, + image_h, flip, box, box_data, allow_outside_center, max_boxes): + """Calculate correct boxes.""" + while candidates: + if len(candidates) > 1: + # ignore default candidate which do not crop + candidate = candidates.pop(np.random.randint(1, len(candidates))) + else: + candidate = candidates.pop(np.random.randint(0, len(candidates))) + dx, dy, nw, nh = candidate + t_box = copy.deepcopy(box) + t_box[:, [0, 2]] = t_box[:, [0, 2]] * float(nw) / float(image_w) + dx + t_box[:, [1, 3]] = t_box[:, [1, 3]] * float(nh) / float(image_h) + dy + if flip: + t_box[:, [0, 2]] = input_w - t_box[:, [2, 0]] + + if allow_outside_center: + pass + else: + t_box = t_box[ + np.logical_and((t_box[:, 0] + t_box[:, 2]) / 2. >= 0., (t_box[:, 1] + t_box[:, 3]) / 2. >= 0.)] + t_box = t_box[np.logical_and((t_box[:, 0] + t_box[:, 2]) / 2. <= input_w, + (t_box[:, 1] + t_box[:, 3]) / 2. <= input_h)] + + # recorrect x, y for case x,y < 0 reset to zero, after dx and dy, some box can smaller than zero + t_box[:, 0:2][t_box[:, 0:2] < 0] = 0 + # recorrect w,h not higher than input size + t_box[:, 2][t_box[:, 2] > input_w] = input_w + t_box[:, 3][t_box[:, 3] > input_h] = input_h + box_w = t_box[:, 2] - t_box[:, 0] + box_h = t_box[:, 3] - t_box[:, 1] + # discard invalid box: w or h smaller than 1 pixel + t_box = t_box[np.logical_and(box_w > 1, box_h > 1)] + + if t_box.shape[0] > 0: + # break if number of find t_box + box_data[: len(t_box)] = t_box + return box_data, candidate + return np.zeros(shape=[max_boxes, 5], dtype=np.float64), (0, 0, nw, nh) + + +def _data_aug(image, box, jitter, hue, sat, val, image_input_size, max_boxes, + anchors, num_classes, max_trial=10, device_num=1): + """Crop an image randomly with bounding box constraints. + + This data augmentation is used in training of + Single Shot Multibox Detector [#]_. More details can be found in + data augmentation section of the original paper. + .. [#] Wei Liu, Dragomir Anguelov, Dumitru Erhan, Christian Szegedy, + Scott Reed, Cheng-Yang Fu, Alexander C. Berg. + SSD: Single Shot MultiBox Detector. ECCV 2016.""" + + if not isinstance(image, Image.Image): + image = Image.fromarray(image) + + image_w, image_h = image.size + input_h, input_w = image_input_size + + np.random.shuffle(box) + if len(box) > max_boxes: + box = box[:max_boxes] + flip = _rand() < .5 + box_data = np.zeros((max_boxes, 5)) + + candidates = _choose_candidate_by_constraints(use_constraints=False, max_trial=max_trial, input_w=input_w, + input_h=input_h, image_w=image_w, image_h=image_h, + jitter=jitter, box=box) + box_data, candidate = _correct_bbox_by_candidates(candidates=candidates, input_w=input_w, input_h=input_h, + image_w=image_w, image_h=image_h, flip=flip, box=box, + box_data=box_data, allow_outside_center=True, max_boxes=max_boxes) + dx, dy, nw, nh = candidate + interp = get_interp_method(interp=10) + image = image.resize((nw, nh), pil_image_reshape(interp)) + # place image, gray color as back graoud + new_image = Image.new('RGB', (input_w, input_h), (128, 128, 128)) + new_image.paste(image, (dx, dy)) + image = new_image + + if flip: + image = filp_pil_image(image) + + image = np.array(image) + image = convert_gray_to_color(image) + image_data = color_distortion(image, hue, sat, val, device_num) + return image_data, box_data + + +def preprocess_fn(image, box, config, input_size, device_num): + """Preprocess data function.""" + config_anchors = config.anchor_scales + anchors = np.array([list(x) for x in config_anchors]) + max_boxes = config.max_box + num_classes = config.num_classes + jitter = config.jitter + hue = config.hue + sat = config.saturation + val = config.value + image, anno = _data_aug(image, box, jitter=jitter, hue=hue, sat=sat, val=val, + image_input_size=input_size, max_boxes=max_boxes, + num_classes=num_classes, anchors=anchors, device_num=device_num) + return image, anno + + +def reshape_fn(image, img_id, config): + input_size = config.test_img_shape + image, ori_image_shape = _reshape_data(image, image_size=input_size) + return image, ori_image_shape, img_id + + +class MultiScaleTrans: + """Multi scale transform.""" + + def __init__(self, config, device_num): + self.config = config + self.seed = 0 + self.size_list = [] + self.resize_rate = config.resize_rate + self.dataset_size = config.dataset_size + self.size_dict = {} + self.seed_num = int(1e6) + self.seed_list = self.generate_seed_list(seed_num=self.seed_num) + self.resize_count_num = int(np.ceil(self.dataset_size / self.resize_rate)) + self.device_num = device_num + self.anchor_scales = config.anchor_scales + self.num_classes = config.num_classes + self.max_box = config.max_box + self.label_smooth = config.label_smooth + self.label_smooth_factor = config.label_smooth_factor + + def generate_seed_list(self, init_seed=1234, seed_num=int(1e6), seed_range=(1, 1000)): + seed_list = [] + random.seed(init_seed) + for _ in range(seed_num): + seed = random.randint(seed_range[0], seed_range[1]) + seed_list.append(seed) + return seed_list + + def __call__(self, img, anno, input_size, mosaic_flag): + if mosaic_flag[0] == 0: + img = vision.Decode(True)(img) + img, anno = preprocess_fn(img, anno, self.config, input_size, self.device_num) + return img, anno, np.array(img.shape[0:2]) + + +def thread_batch_preprocess_true_box(annos, config, input_shape, result_index, batch_bbox_true_1, batch_bbox_true_2, + batch_bbox_true_3, batch_gt_box1, batch_gt_box2, batch_gt_box3): + """Preprocess true box for multi-thread.""" + i = 0 + for anno in annos: + bbox_true_1, bbox_true_2, bbox_true_3, gt_box1, gt_box2, gt_box3 = \ + _preprocess_true_boxes(true_boxes=anno, anchors=config.anchor_scales, in_shape=input_shape, + num_classes=config.num_classes, max_boxes=config.max_box, + label_smooth=config.label_smooth, label_smooth_factor=config.label_smooth_factor) + batch_bbox_true_1[result_index + i] = bbox_true_1 + batch_bbox_true_2[result_index + i] = bbox_true_2 + batch_bbox_true_3[result_index + i] = bbox_true_3 + batch_gt_box1[result_index + i] = gt_box1 + batch_gt_box2[result_index + i] = gt_box2 + batch_gt_box3[result_index + i] = gt_box3 + i = i + 1 + + +def batch_preprocess_true_box(annos, config, input_shape): + """Preprocess true box with multi-thread.""" + batch_bbox_true_1 = [] + batch_bbox_true_2 = [] + batch_bbox_true_3 = [] + batch_gt_box1 = [] + batch_gt_box2 = [] + batch_gt_box3 = [] + threads = [] + + step = 4 + for index in range(0, len(annos), step): + for _ in range(step): + batch_bbox_true_1.append(None) + batch_bbox_true_2.append(None) + batch_bbox_true_3.append(None) + batch_gt_box1.append(None) + batch_gt_box2.append(None) + batch_gt_box3.append(None) + step_anno = annos[index: index + step] + t = threading.Thread(target=thread_batch_preprocess_true_box, + args=(step_anno, config, input_shape, index, batch_bbox_true_1, batch_bbox_true_2, + batch_bbox_true_3, batch_gt_box1, batch_gt_box2, batch_gt_box3)) + t.start() + threads.append(t) + + for t in threads: + t.join() + + return np.array(batch_bbox_true_1), np.array(batch_bbox_true_2), np.array(batch_bbox_true_3), \ + np.array(batch_gt_box1), np.array(batch_gt_box2), np.array(batch_gt_box3) + + +def batch_preprocess_true_box_single(annos, config, input_shape): + """Preprocess true boxes.""" + batch_bbox_true_1 = [] + batch_bbox_true_2 = [] + batch_bbox_true_3 = [] + batch_gt_box1 = [] + batch_gt_box2 = [] + batch_gt_box3 = [] + for anno in annos: + bbox_true_1, bbox_true_2, bbox_true_3, gt_box1, gt_box2, gt_box3 = \ + _preprocess_true_boxes(true_boxes=anno, anchors=config.anchor_scales, in_shape=input_shape, + num_classes=config.num_classes, max_boxes=config.max_box, + label_smooth=config.label_smooth, label_smooth_factor=config.label_smooth_factor) + batch_bbox_true_1.append(bbox_true_1) + batch_bbox_true_2.append(bbox_true_2) + batch_bbox_true_3.append(bbox_true_3) + batch_gt_box1.append(gt_box1) + batch_gt_box2.append(gt_box2) + batch_gt_box3.append(gt_box3) + + return np.array(batch_bbox_true_1), np.array(batch_bbox_true_2), np.array(batch_bbox_true_3), \ + np.array(batch_gt_box1), np.array(batch_gt_box2), np.array(batch_gt_box3) diff --git a/yolo_mindspore/src/util.py b/yolo_mindspore/src/util.py new file mode 100644 index 0000000..3e2deed --- /dev/null +++ b/yolo_mindspore/src/util.py @@ -0,0 +1,351 @@ +# Copyright 2021 Huawei Technologies Co., Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================ +"""Util class or function.""" +import sys +from collections import defaultdict +import datetime +import numpy as np +from pycocotools.coco import COCO +from pycocotools.cocoeval import COCOeval + +import mindspore as ms + +from .yolo import YoloLossBlock + + +class AverageMeter: + """Computes and stores the average and current value""" + + def __init__(self, name, fmt=':f', tb_writer=None): + self.name = name + self.fmt = fmt + self.reset() + self.tb_writer = tb_writer + self.cur_step = 1 + self.val = 0 + self.avg = 0 + self.sum = 0 + self.count = 0 + + def reset(self): + self.val = 0 + self.avg = 0 + self.sum = 0 + self.count = 0 + + def update(self, val, n=1): + self.val = val + self.sum += val * n + self.count += n + self.avg = self.sum / self.count + if self.tb_writer is not None: + self.tb_writer.add_scalar(self.name, self.val, self.cur_step) + self.cur_step += 1 + + def __str__(self): + fmtstr = '{name}:{avg' + self.fmt + '}' + return fmtstr.format(**self.__dict__) + + +def default_wd_filter(x): + """default weight decay filter.""" + parameter_name = x.name + if parameter_name.endswith('.bias'): + # all bias not using weight decay + return False + if parameter_name.endswith('.gamma'): + # bn weight bias not using weight decay, be carefully for now x not + # include BN + return False + if parameter_name.endswith('.beta'): + # bn weight bias not using weight decay, be carefully for now x not + # include BN + return False + + return True + + +def get_param_groups(network): + """Param groups for optimizer.""" + decay_params = [] + no_decay_params = [] + for x in network.trainable_params(): + parameter_name = x.name + if parameter_name.endswith('.bias'): + # all bias not using weight decay + no_decay_params.append(x) + elif parameter_name.endswith('.gamma'): + # bn weight bias not using weight decay, be carefully for now x not + # include BN + no_decay_params.append(x) + elif parameter_name.endswith('.beta'): + # bn weight bias not using weight decay, be carefully for now x not + # include BN + no_decay_params.append(x) + else: + decay_params.append(x) + + return [{'params': no_decay_params, 'weight_decay': 0.0}, + {'params': decay_params}] + + +class ShapeRecord: + """Log image shape.""" + + def __init__(self): + self.shape_record = { + 416: 0, + 448: 0, + 480: 0, + 512: 0, + 544: 0, + 576: 0, + 608: 0, + 640: 0, + 672: 0, + 704: 0, + 736: 0, + 'total': 0 + } + + def set(self, shape): + if len(shape) > 1: + shape = shape[0] + shape = int(shape) + self.shape_record[shape] += 1 + self.shape_record['total'] += 1 + + def show(self, logger): + for key in self.shape_record: + rate = self.shape_record[key] / float(self.shape_record['total']) + logger.info('shape {}: {:.2f}%'.format(key, rate * 100)) + + +def keep_loss_fp32(network): + """Keep loss of network with float32""" + for _, cell in network.cells_and_names(): + if isinstance(cell, (YoloLossBlock,)): + cell.to_float(ms.float32) + + +class Redirct: + def __init__(self): + self.content = "" + + def write(self, content): + self.content += content + + def flush(self): + self.content = "" + + +def cpu_affinity(rank_id, device_num): + """Bind CPU cores according to rank_id and device_num.""" + import psutil + cores = psutil.cpu_count() + if cores < device_num: + return + process = psutil.Process() + used_cpu_num = cores // device_num + rank_id = rank_id % device_num + used_cpu_list = [i for i in range(rank_id * used_cpu_num, (rank_id + 1) * used_cpu_num)] + process.cpu_affinity(used_cpu_list) + print(f"==== {rank_id}/{device_num} ==== bind cpu: {used_cpu_list}") + + +class DetectionEngine: + """Detection engine.""" + + def __init__(self, args_detection, threshold): + self.ignore_threshold = threshold + self.labels = args_detection.labels + self.num_classes = len(self.labels) + self.results = {} + self.file_path = 'run/detect' + self.save_prefix = args_detection.output_dir + self.ann_file = args_detection.ann_file + self._coco = COCO(self.ann_file) + self._img_ids = list(sorted(self._coco.imgs.keys())) + self.det_boxes = [] + self.nms_thresh = args_detection.eval_nms_thresh + self.multi_label = args_detection.multi_label + self.multi_label_thresh = args_detection.multi_label_thresh + self.coco_catids = self._coco.getCatIds() + self.coco_catIds = args_detection.coco_ids + + def do_nms_for_results(self): + """Get result boxes.""" + for img_id in self.results: + for clsi in self.results[img_id]: + dets = self.results[img_id][clsi] + dets = np.array(dets) + keep_index = self._diou_nms(dets, thresh=self.nms_thresh) + + keep_box = [{'image_id': int(img_id), 'category_id': int(clsi), + 'bbox': list(dets[i][:4].astype(float)), + 'score': dets[i][4].astype(float)} for i in keep_index] + self.det_boxes.extend(keep_box) + + def _nms(self, predicts, threshold): + """Calculate NMS.""" + # convert xywh -> xmin ymin xmax ymax + x1 = predicts[:, 0] + y1 = predicts[:, 1] + x2 = x1 + predicts[:, 2] + y2 = y1 + predicts[:, 3] + scores = predicts[:, 4] + + areas = (x2 - x1 + 1) * (y2 - y1 + 1) + order = scores.argsort()[::-1] + + reserved_boxes = [] + while order.size > 0: + i = order[0] + reserved_boxes.append(i) + max_x1 = np.maximum(x1[i], x1[order[1:]]) + max_y1 = np.maximum(y1[i], y1[order[1:]]) + min_x2 = np.minimum(x2[i], x2[order[1:]]) + min_y2 = np.minimum(y2[i], y2[order[1:]]) + + intersect_w = np.maximum(0.0, min_x2 - max_x1 + 1) + intersect_h = np.maximum(0.0, min_y2 - max_y1 + 1) + intersect_area = intersect_w * intersect_h + ovr = intersect_area / \ + (areas[i] + areas[order[1:]] - intersect_area) + + indexes = np.where(ovr <= threshold)[0] + order = order[indexes + 1] + return reserved_boxes + + def _diou_nms(self, dets, thresh=0.5): + """ + convert xywh -> xmin ymin xmax ymax + """ + x1 = dets[:, 0] + y1 = dets[:, 1] + x2 = x1 + dets[:, 2] + y2 = y1 + dets[:, 3] + scores = dets[:, 4] + areas = (x2 - x1 + 1) * (y2 - y1 + 1) + order = scores.argsort()[::-1] + keep = [] + while order.size > 0: + i = order[0] + keep.append(i) + xx1 = np.maximum(x1[i], x1[order[1:]]) + yy1 = np.maximum(y1[i], y1[order[1:]]) + xx2 = np.minimum(x2[i], x2[order[1:]]) + yy2 = np.minimum(y2[i], y2[order[1:]]) + + w = np.maximum(0.0, xx2 - xx1 + 1) + h = np.maximum(0.0, yy2 - yy1 + 1) + inter = w * h + ovr = inter / (areas[i] + areas[order[1:]] - inter) + center_x1 = (x1[i] + x2[i]) / 2 + center_x2 = (x1[order[1:]] + x2[order[1:]]) / 2 + center_y1 = (y1[i] + y2[i]) / 2 + center_y2 = (y1[order[1:]] + y2[order[1:]]) / 2 + inter_diag = (center_x2 - center_x1) ** 2 + (center_y2 - center_y1) ** 2 + out_max_x = np.maximum(x2[i], x2[order[1:]]) + out_max_y = np.maximum(y2[i], y2[order[1:]]) + out_min_x = np.minimum(x1[i], x1[order[1:]]) + out_min_y = np.minimum(y1[i], y1[order[1:]]) + outer_diag = (out_max_x - out_min_x) ** 2 + (out_max_y - out_min_y) ** 2 + diou = ovr - inter_diag / outer_diag + diou = np.clip(diou, -1, 1) + inds = np.where(diou <= thresh)[0] + order = order[inds + 1] + return keep + + def write_result(self): + """Save result to file.""" + import json + t = datetime.datetime.now().strftime('_%Y_%m_%d_%H_%M_%S') + try: + self.file_path = self.save_prefix + '/predict' + t + '.json' + f = open(self.file_path, 'w') + json.dump(self.det_boxes, f) + except IOError as e: + raise RuntimeError("Unable to open json file to dump. What(): {}".format(str(e))) + else: + f.close() + return self.file_path + + def get_eval_result(self): + """Get eval result.""" + coco_gt = COCO(self.ann_file) + coco_dt = coco_gt.loadRes(self.file_path) + coco_eval = COCOeval(coco_gt, coco_dt, 'bbox') + coco_eval.evaluate() + coco_eval.accumulate() + rdct = Redirct() + stdout = sys.stdout + sys.stdout = rdct + coco_eval.summarize() + sys.stdout = stdout + return rdct.content + + def detect(self, outputs, batch, image_shape, image_id): + """Detect boxes.""" + # output [|32, 52, 52, 3, 85| ] + for batch_id in range(batch): + for out_item in outputs: + # 52, 52, 3, 85 + out_item_single = out_item[batch_id, :] + ori_w, ori_h = image_shape[batch_id] + img_id = int(image_id[batch_id]) + if img_id not in self.results: + self.results[img_id] = defaultdict(list) + x = ori_w * out_item_single[..., 0].reshape(-1) + y = ori_h * out_item_single[..., 1].reshape(-1) + w = ori_w * out_item_single[..., 2].reshape(-1) + h = ori_h * out_item_single[..., 3].reshape(-1) + conf = out_item_single[..., 4:5] + cls_emb = out_item_single[..., 5:] + cls_argmax = np.expand_dims(np.argmax(cls_emb, axis=-1), axis=-1) + x_top_left = x - w / 2. + y_top_left = y - h / 2. + cls_emb = cls_emb.reshape(-1, self.num_classes) + if self.multi_label: + confidence = conf.reshape(-1, 1) * cls_emb + # create all False + flag = cls_emb > self.multi_label_thresh + flag = flag.nonzero() + for i, j in zip(*flag): + confi = confidence[i][j] + if confi < self.ignore_threshold: + continue + x_lefti, y_lefti = max(0, x_top_left[i]), max(0, y_top_left[i]) + wi, hi = min(w[i], ori_w), min(h[i], ori_h) + # transform catId to match coco + coco_clsi = self.coco_catIds[j] + self.results[img_id][coco_clsi].append([x_lefti, y_lefti, wi, hi, confi]) + else: + cls_argmax = cls_argmax.reshape(-1) + # create all False + flag = np.random.random(cls_emb.shape) > sys.maxsize + for i in range(flag.shape[0]): + c = cls_argmax[i] + flag[i, c] = True + confidence = conf.reshape(-1) * cls_emb[flag] + for x_lefti, y_lefti, wi, hi, confi, clsi in zip(x_top_left, y_top_left, + w, h, confidence, cls_argmax): + if confi < self.ignore_threshold: + continue + x_lefti, y_lefti = max(0, x_lefti), max(0, y_lefti) + wi, hi = min(wi, ori_w), min(hi, ori_h) + # transform catId to match coco + coco_clsi = self.coco_catids[clsi] + self.results[img_id][coco_clsi].append([x_lefti, y_lefti, wi, hi, confi]) diff --git a/yolov5/src/yolo.py b/yolo_mindspore/src/yolo.py similarity index 100% rename from yolov5/src/yolo.py rename to yolo_mindspore/src/yolo.py diff --git a/yolov5/src/yolo_dataset.py b/yolo_mindspore/src/yolo_dataset.py similarity index 100% rename from yolov5/src/yolo_dataset.py rename to yolo_mindspore/src/yolo_dataset.py diff --git a/yolo_mindspore/train.py b/yolo_mindspore/train.py new file mode 100644 index 0000000..310cd28 --- /dev/null +++ b/yolo_mindspore/train.py @@ -0,0 +1,130 @@ +# Copyright 2021 Huawei Technologies Co., Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================ +"""YoloV5 train.""" +import os +import time +import mindspore as ms +import mindspore.nn as nn +import mindspore.communication as comm + +from src.yolo import YOLOV5, YoloWithLossCell +from src.logger import get_logger +from src.util import AverageMeter, get_param_groups, cpu_affinity +from src.lr_scheduler import get_lr +from src.yolo_dataset import create_yolo_dataset +from src.initializer import default_recurisive_init, load_yolov5_params + +from model_utils.config import config +from model_utils.device_adapter import get_device_id + +# only useful for huawei cloud modelarts. +from model_utils.moxing_adapter import moxing_wrapper, modelarts_pre_process, modelarts_post_process + + +ms.set_seed(1) + + +def init_distribute(): + comm.init() + config.rank = comm.get_rank() + config.group_size = comm.get_group_size() + ms.set_auto_parallel_context(parallel_mode=ms.ParallelMode.DATA_PARALLEL, gradients_mean=True, + device_num=config.group_size) + + +def train_preprocess(): + if config.lr_scheduler == 'cosine_annealing' and config.max_epoch > config.T_max: + config.T_max = config.max_epoch + + config.lr_epochs = list(map(int, config.lr_epochs.split(','))) + config.data_root = os.path.join(config.data_dir, 'dataset/mask/images/train') + config.annFile = os.path.join(config.data_dir, 'coco/annotations.json') + device_id = get_device_id() + ms.set_context(mode=ms.GRAPH_MODE, device_target=config.device_target, device_id=device_id) + + if config.is_distributed: + # init distributed + init_distribute() + + # for promoting performance in GPU device + if config.device_target == "GPU" and config.bind_cpu: + cpu_affinity(config.rank, min(config.group_size, config.device_num)) + + # logger module is managed by config, it is used in other function. e.x. config.logger.info("xxx") + config.logger = get_logger(config.output_dir, config.rank) + config.logger.save_args(config) + + +@moxing_wrapper(pre_process=modelarts_pre_process, post_process=modelarts_post_process, pre_args=[config]) +def run_train(): + train_preprocess() + + loss_meter = AverageMeter('loss') + dict_version = {'yolov5s': 0, 'yolov5m': 1, 'yolov5l': 2, 'yolov5x': 3} + network = YOLOV5(is_training=True, version=dict_version[config.yolov5_version]) + # default is kaiming-normal + default_recurisive_init(network) + load_yolov5_params(config, network) + network = YoloWithLossCell(network) + + ds = create_yolo_dataset(image_dir=config.data_root, anno_path=config.annFile, is_training=True, + batch_size=config.per_batch_size, device_num=config.group_size, + rank=config.rank, config=config) + config.logger.info('Finish loading dataset') + + steps_per_epoch = ds.get_dataset_size() + lr = get_lr(config, steps_per_epoch) + opt = nn.Momentum(params=get_param_groups(network), momentum=config.momentum, learning_rate=ms.Tensor(lr), + weight_decay=config.weight_decay, loss_scale=config.loss_scale) + network = nn.TrainOneStepCell(network, opt, config.loss_scale // 2) + network.set_train() + + data_loader = ds.create_tuple_iterator(do_copy=False) + first_step = True + t_end = time.time() + + for epoch_idx in range(config.max_epoch): + for step_idx, data in enumerate(data_loader): + images = data[0] + input_shape = images.shape[2:4] + input_shape = ms.Tensor(tuple(input_shape[::-1]), ms.float32) + loss = network(images, data[2], data[3], data[4], data[5], data[6], + data[7], input_shape) + loss_meter.update(loss.asnumpy()) + + # it is used for loss, performance output per config.log_interval steps. + if (epoch_idx * steps_per_epoch + step_idx) % config.log_interval == 0: + time_used = time.time() - t_end + if first_step: + fps = config.per_batch_size * config.group_size / time_used + per_step_time = time_used * 1000 + first_step = False + else: + fps = config.per_batch_size * config.log_interval * config.group_size / time_used + per_step_time = time_used / config.log_interval * 1000 + config.logger.info('epoch[{}], iter[{}], {}, fps:{:.2f} imgs/sec, ' + 'lr:{}, per step time: {}ms'.format(epoch_idx + 1, step_idx + 1, + loss_meter, fps, lr[step_idx], per_step_time)) + t_end = time.time() + loss_meter.reset() + if config.rank == 0: + ckpt_name = os.path.join(config.output_dir, "yolov5_{}_{}.ckpt".format(epoch_idx + 1, steps_per_epoch)) + ms.save_checkpoint(network, ckpt_name) + + config.logger.info('==========end training===============') + + +if __name__ == "__main__": + run_train() diff --git a/yolo_mindspore/yolo_to_coco.py b/yolo_mindspore/yolo_to_coco.py new file mode 100644 index 0000000..c601d62 --- /dev/null +++ b/yolo_mindspore/yolo_to_coco.py @@ -0,0 +1,84 @@ +import os +import json +import random +import time +from PIL import Image +import csv + +coco_format_save_path = './coco' # 要生成的标准coco格式标签所在文件夹 +yolo_format_classes_path = 'annotations.csv' # 类别文件,用csv文件表示,一行一个类 +yolo_format_annotation_path = './dataset/mask/labels/val' # yolo格式标签所在文件夹 +img_pathDir = './dataset/mask/images/val' # 图片所在文件夹 + +# 类别设置 +categories = [] +class_names = ['with_mask', 'without_mask'] +for label in class_names: + categories.append({'id': class_names.index(label), 'name': label, 'supercategory': ""}) + +write_json_context = dict() # 写入.json文件的大字典 +write_json_context['licenses'] = [{'name': "", 'id': 0, 'url': ""}] +write_json_context['info'] = {'contributor': "", 'date_created': "", 'description': "", 'url': "", 'version': "", 'year': ""} +write_json_context['categories'] = categories +write_json_context['images'] = [] +write_json_context['annotations'] = [] + +# 接下来的代码主要添加'images'和'annotations'的key值 +imageFileList = os.listdir(img_pathDir) +# 遍历该文件夹下的所有文件,并将所有文件名添加到列表中 +img_id = 0 # 图片编号 +anno_id = 0 # 标注标号 +for i, imageFile in enumerate(imageFileList): + if '_' not in imageFile: + img_id += 1 + imagePath = os.path.join(img_pathDir, imageFile) # 获取图片的绝对路径 + image = Image.open(imagePath) # 读取图片 + W, H = image.size # 获取图片的高度宽度 + img_context = {} # 使用一个字典存储该图片信息 + # img_name=os.path.basename(imagePath) + img_context['id'] = img_id # 每张图像的唯一ID索引 + img_context['width'] = W + img_context['height'] = H + img_context['file_name'] = imageFile + img_context['license'] = 0 + img_context['flickr_url'] = "" + img_context['color_url'] = "" + img_context['date_captured'] = "" + + write_json_context['images'].append(img_context) # 将该图片信息添加到'image'列表中 + + txtFile = imageFile.split('.')[0] + '.txt' # 获取该图片获取的txt文件 + with open(os.path.join(yolo_format_annotation_path, txtFile), 'r') as fr: + lines = fr.readlines() # 读取txt文件的每一行数据,lines2是一个列表,包含了一个图片的所有标注信息 + + for j, line in enumerate(lines): + anno_id += 1 # 标注的id从1开始 + bbox_dict = {} # 将每一个bounding box信息存储在该字典中 + + class_id, x, y, w, h = line.strip().split(' ') # 获取每一个标注框的详细信息 + class_id, x, y, w, h = int(class_id), float(x), float(y), float(w), float(h) # 将字符串类型转为可计算的int和float类型 + + # 坐标转换 + xmin = (x - w / 2) * W + ymin = (y - h / 2) * H + xmax = (x + w / 2) * W + ymax = (y + h / 2) * H + w = w * W + h = h * H + height, width = abs(ymax - ymin), abs(xmax - xmin) + + # bounding box的坐标信息 + bbox_dict['id'] = anno_id # 每个标注信息的索引 + bbox_dict['image_id'] = img_id # 当前图像的ID索引 + bbox_dict['category_id'] = class_id # 类别信息 + bbox_dict['segmentation'] = [[xmin, ymin, xmax, ymin, xmax, ymax, xmin, ymax]] + bbox_dict['area'] = height * width + bbox_dict['bbox'] = [xmin, ymin, w, h] # 注意目标类别要加一 + bbox_dict['iscrowd'] = 0 + bbox_dict['attributes'] = "" + + write_json_context['annotations'].append(bbox_dict) # 将每一个由字典存储的bounding box信息添加到'annotations'列表中 + +name = os.path.join(coco_format_save_path, "annotations" + '.json') +with open(name, 'w') as fw: # 将字典信息写入.json文件中 + json.dump(write_json_context, fw, indent=4, ensure_ascii=False) diff --git a/yolov5.py b/yolov5.py new file mode 100644 index 0000000..b937f82 --- /dev/null +++ b/yolov5.py @@ -0,0 +1,336 @@ +import argparse +import os +import platform +import shutil +import time +from pathlib import Path +import os +os.environ['KMP_DUPLICATE_LIB_OK']='True' +import cv2 +import torch +import torch.backends.cudnn as cudnn +from numpy import random +from utils.utils import * +from models.experimental import attempt_load +from utils.datasets import LoadStreams, LoadImages +from utils.general import ( + check_img_size, non_max_suppression, apply_classifier, scale_coords, + xyxy2xywh, plot_one_box, strip_optimizer, set_logging) +from utils.torch_utils import select_device, load_classifier, time_synchronized +from utils.general import ( + check_img_size, non_max_suppression, apply_classifier, scale_coords, + xyxy2xywh, plot_one_box, strip_optimizer, set_logging) + +# def detect_image(source,out,imgsz = 640,save_img=False,save_txt = False,weights = "./weights/yolov5s.pt"): +# # out, source, weights, view_img, save_txt, imgsz = \ +# # opt.output, opt.source, opt.weights, opt.view_img, opt.save_txt, opt.img_size +# # webcam = source == '0' or source.startswith('rtsp') or source.startswith('http') or source.endswith('.txt') +# webcam = source =='0' +# # Initialize +# set_logging() +# device = select_device('') +# # if os.path.exists(out): +# # shutil.rmtree(out) # delete output folder +# # os.mkdir(out) # make new output folder +# half = device.type != 'cpu' # half precision only supported on CUDA +# +# # Load model +# model = attempt_load(weights, map_location=device) # load FP32 model +# imgsz = check_img_size(imgsz, s=model.stride.max()) # check img_size +# if half: +# model.half() # to FP16 +# +# # Second-stage classifier +# # classify = False +# # if classify: +# # modelc = load_classifier(name='resnet101', n=2) # initialize +# # modelc.load_state_dict(torch.load('weights/resnet101.pt', map_location=device)['model']) # load weights +# # modelc.to(device).eval() +# +# # Set Dataloader +# vid_path, vid_writer = None, None +# if webcam: +# view_img = True +# cudnn.benchmark = True # set True to speed up constant image size inference +# dataset = LoadStreams(source, img_size=imgsz) +# else: +# save_img = True +# view_img = False +# dataset = LoadImages(source, img_size=imgsz) +# +# # Get names and colors +# names = model.module.names if hasattr(model, 'module') else model.names +# colors = [[random.randint(0, 255) for _ in range(3)] for _ in range(len(names))] +# +# # Run inference +# t0 = time.time() +# img = torch.zeros((1, 3, imgsz, imgsz), device=device) # init img +# _ = model(img.half() if half else img) if device.type != 'cpu' else None +# list_file = open("detection.txt", 'w')# run once +# for path, img, im0s, vid_cap in dataset: +# img = torch.from_numpy(img).to(device) +# img = img.half() if half else img.float() # uint8 to fp16/32 +# img /= 255.0 # 0 - 255 to 0.0 - 1.0 +# if img.ndimension() == 3: +# img = img.unsqueeze(0) +# +# # Inference +# t1 = time_synchronized() +# pred = model(img, augment='store_true')[0] +# +# # Apply NMS +# pred = non_max_suppression(pred, 0.4,0.5, agnostic='store_true') +# t2 = time_synchronized() +# +# # # Apply Classifier +# # if classify: +# # pred = apply_classifier(pred, modelc, img, im0s) +# +# # Process detections +# for i, det in enumerate(pred): # detections per image +# if webcam: # batch_size >= 1 +# p, s, im0 = path[i], '%g: ' % i, im0s[i].copy() +# else: +# p, s, im0 = path, '', im0s +# +# save_path = str(Path(out) / Path(p).name) +# txt_path = str(Path(out) / Path(p).stem) + ('_%g' % dataset.frame if dataset.mode == 'video' else '') +# s += '%gx%g ' % img.shape[2:] # print string +# gn = torch.tensor(im0.shape)[[1, 0, 1, 0]] # normalization gain whwh +# if det is not None and len(det): +# # Rescale boxes from img_size to im0 size +# det[:, :4] = scale_coords(img.shape[2:], det[:, :4], im0.shape).round() +# +# # Print results +# for c in det[:, -1].unique(): +# n = (det[:, -1] == c).sum() # detections per class +# s += '%g %ss, ' % (n, names[int(c)]) # add to string +# +# # Write results +# +# +# for *xyxy, conf, cls in reversed(det): +# if save_txt: # Write to file +# xywh = (xyxy2xywh(torch.tensor(xyxy).view(1, 4)) / gn).view(-1).tolist() # normalized xywh +# with open(txt_path + '.txt', 'a') as f: +# f.write(('%g ' * 5 + '\n') % (cls, *xywh)) +# +# # label format +# +# if save_img or view_img: # Add bbox to image +# label = '%s %.2f' % (names[int(cls)], conf) +# plot_one_box(xyxy, im0, label=label, color=colors[int(cls)], line_thickness=3) +# +# # Print time (inference + NMS) +# # with open(os.getcwd()+'output.txt','w') as f: +# # f.write('%sDone. (%.3fs)' % (s, t2 - t1)) +# +# list_file.write('%sDone. (%.3fs)' % (s, t2 - t1)) +# list_file.write('\n') +# print('%sDone. (%.3fs)' % (s, t2 - t1)) +# +# # Stream results +# if view_img: +# cv2.imshow(p, im0) +# if cv2.waitKey(1) == ord('q'): # q to quit +# raise StopIteration +# +# # Save results (image with detections) +# if save_img: +# if dataset.mode == 'images': +# cv2.imwrite(save_path, im0) +# else: +# if vid_path != save_path: # new video +# vid_path = save_path +# if isinstance(vid_writer, cv2.VideoWriter): +# vid_writer.release() # release previous video writer +# +# fourcc = 'mp4v' # output video codec +# fps = vid_cap.get(cv2.CAP_PROP_FPS) +# w = int(vid_cap.get(cv2.CAP_PROP_FRAME_WIDTH)) +# h = int(vid_cap.get(cv2.CAP_PROP_FRAME_HEIGHT)) +# vid_writer = cv2.VideoWriter(save_path, cv2.VideoWriter_fourcc(*fourcc), fps, (w, h)) +# vid_writer.write(im0) +# +# if save_txt or save_img: +# print('Results saved to %s' % Path(out)) +# # if platform.system() == 'Darwin' and not opt.update: # MacOS +# # os.system('open ' + save_path) +# +# print('Done. (%.3fs)' % (time.time() - t0)) + +def detect(save_img=False): + out, source, weights, view_img, save_txt, imgsz = \ + opt.output, opt.source, opt.weights, opt.view_img, opt.save_txt, opt.img_size + webcam = source.isnumeric() or source.startswith('rtsp') or source.startswith('http') or source.endswith('.txt') + print('-----') + print(source) + print(type(source)) + # Initialize + set_logging() + device = select_device(opt.device) + if os.path.exists(out): + shutil.rmtree(out) # delete output folder + os.makedirs(out) # make new output folder + half = device.type != 'cpu' # half precision only supported on CUDA + + # Load model + model = attempt_load(weights, map_location=device) # load FP32 model + imgsz = check_img_size(imgsz, s=model.stride.max()) # check img_size + if half: + model.half() # to FP16 + + # Second-stage classifier + classify = False + if classify: + modelc = load_classifier(name='resnet101', n=2) # initialize + modelc.load_state_dict(torch.load('weights/resnet101.pt', map_location=device)['model']) # load weights + modelc.to(device).eval() + + # Set Dataloader + vid_path, vid_writer = None, None + if webcam: + view_img = True + cudnn.benchmark = True # set True to speed up constant image size inference + dataset = LoadStreams(source, img_size=imgsz) + else: + save_img = True + dataset = LoadImages(source, img_size=imgsz) + + # Get names and colors + names = model.module.names if hasattr(model, 'module') else model.names + colors = [[random.randint(0, 255) for _ in range(3)] for _ in range(len(names))] + + # Run inference + t0 = time.time() + img = torch.zeros((1, 3, imgsz, imgsz), device=device) # init img + _ = model(img.half() if half else img) if device.type != 'cpu' else None # run once + for path, img, im0s, vid_cap in dataset: + print('path:{0}'.format(path)) + print('im0s:{0}'.format(im0s)) + print('im0s类型:{0}'.format(type(im0s))) + img = torch.from_numpy(img).to(device) + img = img.half() if half else img.float() # uint8 to fp16/32 + img /= 255.0 # 0 - 255 to 0.0 - 1.0 + if img.ndimension() == 3: + img = img.unsqueeze(0) + + # Inference + t1 = time_synchronized() + pred = model(img, augment=opt.augment)[0] + + # Apply NMS + pred = non_max_suppression(pred, opt.conf_thres, opt.iou_thres, classes=opt.classes, agnostic=opt.agnostic_nms) + t2 = time_synchronized() + + + + # Apply Classifier + if classify: + pred = apply_classifier(pred, modelc, img, im0s) + + # 用于存储人员边界坐标的列表 ---linjie + people_coords = [] + + # Process detections + for i, det in enumerate(pred): # detections per image + if webcam: # batch_size >= 1 + p, s, im0 = path[i], '%g: ' % i, im0s[i].copy() + else: + p, s, im0 = path, '', im0s + + save_path = str(Path(out) / Path(p).name) + txt_path = str(Path(out) / Path(p).stem) + ('_%g' % dataset.frame if dataset.mode == 'video' else '') + s += '%gx%g ' % img.shape[2:] # print string + gn = torch.tensor(im0.shape)[[1, 0, 1, 0]] # normalization gain whwh + if det is not None and len(det): + # print('先看看这里能不能进行,再看看im0多少:{0}。再看看im0类型:{1}'.format(im0,type(im0))) + # Rescale boxes from img_size to im0 size + det[:, :4] = scale_coords(img.shape[2:], det[:, :4], im0.shape).round() + + # Print results + for c in det[:, -1].unique(): + n = (det[:, -1] == c).sum() # detections per class + s += '%g %ss, ' % (n, names[int(c)]) # add to string + + # Write results + for *xyxy, conf, cls in reversed(det): + if save_txt: # Write to file + xywh = (xyxy2xywh(torch.tensor(xyxy).view(1, 4)) / gn).view(-1).tolist() # normalized xywh + with open(txt_path + '.txt', 'a') as f: + f.write(('%g ' * 5 + '\n') % (cls, *xywh)) # label format + + if save_img or view_img: # Add bbox to image + label = '%s %.2f' % (names[int(cls)], conf) + plot_one_box(xyxy, im0, label=label, color=colors[int(cls)], line_thickness=3) + #判断标签是否为人 --linjie + if label is not None: + if (label.split())[0] == 'person': + print('标签是人') + distancing(people_coords, im0, dist_thres_lim=(200, 250)) + people_coords.append(xyxy) + # plot_one_box(xyxy, im0, line_thickness=3) + plot_dots_on_people(xyxy, im0) + + # 画上人与人的连接线 --linjie + distancing(people_coords, im0, dist_thres_lim=(200, 250)) + + # Print time (inference + NMS) + print('%sDone. (%.3fs)' % (s, t2 - t1)) + + # Stream results + if view_img: + cv2.imshow(p, im0) + if cv2.waitKey(1) == ord('q'): # q to quit + raise StopIteration + + # Save results (image with detections) + if save_img: + if dataset.mode == 'images': + cv2.imwrite(save_path, im0) + else: + if vid_path != save_path: # new video + vid_path = save_path + if isinstance(vid_writer, cv2.VideoWriter): + vid_writer.release() # release previous video writer + + fourcc = 'mp4v' # output video codec + fps = vid_cap.get(cv2.CAP_PROP_FPS) + w = int(vid_cap.get(cv2.CAP_PROP_FRAME_WIDTH)) + h = int(vid_cap.get(cv2.CAP_PROP_FRAME_HEIGHT)) + vid_writer = cv2.VideoWriter(save_path, cv2.VideoWriter_fourcc(*fourcc), fps, (w, h)) + vid_writer.write(im0) + + if save_txt or save_img: + print('Results saved to %s' % Path(out)) + if platform == 'Darwin' and not opt.update: # MacOS + os.system('open ' + save_path) + + print('Done. (%.3fs)' % (time.time() - t0)) +if __name__ == '__main__': + parser = argparse.ArgumentParser() + parser.add_argument('--weights', nargs='+', type=str, default='yolov5s.pt', help='model.pt path(s)') + parser.add_argument('--source', type=str, default='inference/images', help='source') # file/folder, 0 for webcam + parser.add_argument('--output', type=str, default='inference/output', help='output folder') # output folder + parser.add_argument('--img-size', type=int, default=640, help='inference size (pixels)') + parser.add_argument('--conf-thres', type=float, default=0.4, help='object confidence threshold') + parser.add_argument('--iou-thres', type=float, default=0.5, help='IOU threshold for NMS') + parser.add_argument('--device', default='', help='cuda device, i.e. 0 or 0,1,2,3 or cpu') + parser.add_argument('--view-img', action='store_true', help='display results') + parser.add_argument('--save-txt', action='store_true', help='save results to *.txt') + parser.add_argument('--classes', nargs='+', type=int, help='filter by class: --class 0, or --class 0 2 3') + parser.add_argument('--agnostic-nms', action='store_true', help='class-agnostic NMS') + parser.add_argument('--augment', action='store_true', help='augmented inference') + parser.add_argument('--update', action='store_true', help='update all models') + opt = parser.parse_args() + print(opt) + + with torch.no_grad(): + if opt.update: # update all models (to fix SourceChangeWarning) + for opt.weights in ['yolov5s.pt', 'yolov5m.pt', 'yolov5l.pt', 'yolov5x.pt']: + print('model1') + detect() + strip_optimizer(opt.weights) + else: + print('model2') + detect() diff --git a/yolov5/README.md b/yolov5/README.md deleted file mode 100644 index 1e8fa23..0000000 --- a/yolov5/README.md +++ /dev/null @@ -1,410 +0,0 @@ -# Contents - -- [Contents](#contents) -- [YOLOv5 Description](#YOLOv5-description) -- [Model Architecture](#model-architecture) -- [Dataset](#dataset) -- [Quick Start](#quick-start) -- [Script Description](#script-description) - - [Script and Sample Code](#script-and-sample-code) - - [Script Parameters](#script-parameters) - - [Training Process](#training-process) - - [Training](#training) - - [Distributed Training](#distributed-training) - - [Inference Process](#inference-process) - - [Export MindIR](#export-mindir) - - [Infer on Ascend310](#infer-on-ascend310) - - [result](#result) - - [Export ONNX](#export-onnx) - - [Run ONNX evaluation](#run-onnx-evaluation) - - [result](#result) -- [Model Description](#model-description) -- [Performance](#performance) - - [Evaluation Performance](#evaluation-performance) - - [Inference Performance](#inference-performance) - - [Transfer Learning](#transfer-learning) -- [Description of Random Situation](#description-of-random-situation) -- [ModelZoo Homepage](#modelzoo-homepage) - -# [YOLOv5 Description](#contents) - -Published in April 2020, YOLOv5 achieved state of the art performance on the COCO dataset for object detection. It is an important improvement of YoloV3, the implementation of a new architecture in the **Backbone** and the modifications in the **Neck** have improved the **mAP**(mean Average Precision) by **10%** and the number of **FPS**(Frame per Second) by **12%**. - -[code](https://github.com/ultralytics/yolov5) - -# [Model Architecture](#contents) - -The YOLOv5 network is mainly composed of CSP and Focus as a backbone, spatial pyramid pooling(SPP) additional module, PANet path-aggregation neck and YOLOv3 head. [CSP](https://arxiv.org/abs/1911.11929) is a novel backbone that can enhance the learning capability of CNN. The [spatial pyramid pooling](https://arxiv.org/abs/1406.4729) block is added over CSP to increase the receptive field and separate out the most significant context features. Instead of Feature pyramid networks (FPN) for object detection used in YOLOv3, the PANet is used as the method for parameter aggregation for different detector levels. To be more specifical, CSPDarknet53 contains 5 CSP modules which use the convolution **C** with kernel size k=3x3, stride s = 2x2; Within the PANet and SPP, **1x1, 5x5, 9x9, 13x13 max poolings are applied. - -# [Dataset](#contents) - -Dataset used: [COCO2017]() - -Note that you can run the scripts with **COCO2017 **or any other datasets with the same format as MS COCO Annotation. But we do suggest user to use MS COCO dataset to experience our model. - -# [Quick Start](#contents) - -After installing MindSpore via the official website, you can start training and evaluation as follows: - -```bash -#run training example(1p) on Ascend/GPU by python command -python train.py \ - --device_target="Ascend" \ # Ascend or GPU - --data_dir=xxx/dataset \ - --is_distributed=0 \ - --yolov5_version='yolov5s' \ - --lr=0.01 \ - --max_epoch=320 \ - --warmup_epochs=4 > log.txt 2>&1 & -``` - -```bash -# run 1p by shell script, please change `device_target` in config file to run on Ascend/GPU, and change `T_max`, `max_epoch`, `warmup_epochs` refer to contents of notes -bash run_standalone_train.sh [DATASET_PATH] - -# For Ascend device, distributed training example(8p) by shell script -bash run_distribute_train.sh [DATASET_PATH] [RANK_TABLE_FILE] - -# For GPU device, distributed training example(8p) by shell script -bash run_distribute_train_gpu.sh [DATASET_PATH] [RANK_SIZE] -``` - -```bash -# run evaluation on Ascend/GPU by python command -python eval.py \ - --device_target="Ascend" \ # Ascend or GPU - --data_dir=xxx/dataset \ - --yolov5_version='yolov5s' \ - --pretrained="***/*.ckpt" \ - --eval_shape=640 > log.txt 2>&1 & -``` - -```bash -# run evaluation by shell script, please change `device_target` in config file to run on Ascend/GPU -bash run_eval.sh [DATASET_PATH] [CHECKPOINT_PATH] -``` - -Note the default_config.yaml is the default parameters for yolov5s on 8p. The `batchsize` and `lr` are different on Ascend and GPU, see the settings in `scripts/run_distribute_train.sh` or `scripts/run_distribute_train_gpu.sh`. - -# [Script Description](#contents) - -## [Script and Sample Code](#contents) - -```text -├── model_zoo - ├── README.md // descriptions about all the models - ├── yolov5 - ├── README.md // descriptions about yolov5 - ├── scripts - │ ├──docker_start.sh // shell script for docker start - │ ├──run_distribute_train.sh // launch distributed training(8p) in ascend - │ ├──run_distribute_train_gpu.sh // launch distributed training(8p) in GPU - │ ├──run_standalone_train.sh // launch 1p training - │ ├──run_infer_310.sh // shell script for evaluation on 310 - │ ├──run_eval.sh // shell script for evaluation - │ ├──run_eval_onnx.sh // shell script for onnx evaluation - ├──model_utils - │ ├──config.py // getting config parameters - │ ├──device_adapter.py // getting device info - │ ├──local_adapter.py // getting device info - │ ├──moxing_adapter.py // Decorator - ├── src - │ ├──backbone.py // backbone of network - │ ├──distributed_sampler.py // iterator of dataset - │ ├──initializer.py // initializer of parameters - │ ├──logger.py // log function - │ ├──loss.py // loss function - │ ├──lr_scheduler.py // generate learning rate - │ ├──transforms.py // Preprocess data - │ ├──util.py // util function - │ ├──yolo.py // yolov5 network - │ ├──yolo_dataset.py // create dataset for YOLOV5 - ├── default_config.yaml // parameter configuration(yolov5s 8p) - ├── train.py // training script - ├── eval.py // evaluation script - ├── eval_onnx.py // ONNX evaluation script - ├── export.py // export script -``` - -## [Script Parameters](#contents) - -```text -Major parameters in train.py are: - -optional arguments: - - --device_target device where the code will be implemented: "Ascend", default is "Ascend" - --data_dir Train dataset directory. - --per_batch_size Batch size for Training. Default: 32(1p) 16(Ascend 8p) 32(GPU 8p). - --resume_yolov5 The ckpt file of YOLOv5, which used to fine tune.Default: "" - --lr_scheduler Learning rate scheduler, options: exponential,cosine_annealing. - Default: cosine_annealing - --lr Learning rate. Default: 0.01(1p) 0.02(Ascend 8p) 0.025(GPU 8p) - --lr_epochs Epoch of changing of lr changing, split with ",". Default: '220,250' - --lr_gamma Decrease lr by a factor of exponential lr_scheduler. Default: 0.1 - --eta_min Eta_min in cosine_annealing scheduler. Default: 0. - --t_max T-max in cosine_annealing scheduler. Default: 300(8p) - --max_epoch Max epoch num to train the model. Default: 300(8p) - --warmup_epochs Warmup epochs. Default: 20(8p) - --weight_decay Weight decay factor. Default: 0.0005 - --momentum Momentum. Default: 0.9 - --loss_scale Static loss scale. Default: 64 - --label_smooth Whether to use label smooth in CE. Default:0 - --label_smooth_factor Smooth strength of original one-hot. Default: 0.1 - --log_interval Logging interval steps. Default: 100 - --ckpt_path Checkpoint save location. Default: outputs/ - --is_distributed Distribute train or not, 1 for yes, 0 for no. Default: 0 - --rank Local rank of distributed. Default: 0 - --group_size World size of device. Default: 1 - --need_profiler Whether use profiler. 0 for no, 1 for yes. Default: 0 - --training_shape Fix training shape. Default: "" - --resize_rate Resize rate for multi-scale training. Default: 10 - --bind_cpu Whether bind cpu when distributed training. Default: True - --device_num Device numbers per server. Default: 8 -``` - -## [Training Process](#contents) - -### Training - -For Ascend device, standalone training can be started like this: - -```shell -#run training example(1p) by python command -python train.py \ - --data_dir=xxx/dataset \ - --yolov5_version='yolov5s' \ - --is_distributed=0 \ - --lr=0.01 \ - --T_max=320 - --max_epoch=320 \ - --warmup_epochs=4 \ - --per_batch_size=32 \ - --lr_scheduler=cosine_annealing > log.txt 2>&1 & -``` - -You should fine tune the params when run training 1p on GPU - -The python command above will run in the background, you can view the results through the file `log.txt`. - -After training, you'll get some checkpoint files under the **outputs** folder by default. The loss value will be achieved as follows: - -```text -# grep "loss:" log.txt -2021-08-06 15:30:15,798:INFO:epoch[0], iter[600], loss:296.308071, fps:44.44 imgs/sec, lr:0.00010661844862625003 -2021-08-06 15:31:21,119:INFO:epoch[0], iter[700], loss:276.071959, fps:48.99 imgs/sec, lr:0.00012435863027349114 -2021-08-06 15:32:26,185:INFO:epoch[0], iter[800], loss:266.955208, fps:49.18 imgs/sec, lr:0.00014209879736881703 -2021-08-06 15:33:30,507:INFO:epoch[0], iter[900], loss:252.610914, fps:49.75 imgs/sec, lr:0.00015983897901605815 -2021-08-06 15:34:42,176:INFO:epoch[0], iter[1000], loss:243.106683, fps:44.65 imgs/sec, lr:0.00017757914611138403 -2021-08-06 15:35:47,429:INFO:epoch[0], iter[1100], loss:240.498834, fps:49.04 imgs/sec, lr:0.00019531932775862515 -2021-08-06 15:36:48,945:INFO:epoch[0], iter[1200], loss:245.711473, fps:52.02 imgs/sec, lr:0.00021305949485395104 -2021-08-06 15:37:51,293:INFO:epoch[0], iter[1300], loss:231.388255, fps:51.33 imgs/sec, lr:0.00023079967650119215 -2021-08-06 15:38:55,680:INFO:epoch[0], iter[1400], loss:238.904242, fps:49.70 imgs/sec, lr:0.00024853984359651804 -2021-08-06 15:39:57,419:INFO:epoch[0], iter[1500], loss:232.161600, fps:51.83 imgs/sec, lr:0.00026628002524375916 -2021-08-06 15:41:03,808:INFO:epoch[0], iter[1600], loss:227.844698, fps:48.20 imgs/sec, lr:0.00028402020689100027 -2021-08-06 15:42:06,155:INFO:epoch[0], iter[1700], loss:226.668858, fps:51.33 imgs/sec, lr:0.00030176035943441093 -... -``` - -### Distributed Training - -Distributed training example(8p) by shell script: - -```bash -# For Ascend device, distributed training example(8p) by shell script -bash run_distribute_train.sh [DATASET_PATH] [RANK_TABLE_FILE] - -# For GPU device, distributed training example(8p) by shell script -bash run_distribute_train_gpu.sh [DATASET_PATH] [RANK_SIZE] -``` - -The above shell script will run distribute training in the background. You can view the results through the file train_parallel[X]/log.txt(Ascend) or distribute_train/nohup.out(GPU). The loss value will be achieved as follows: - -```text -# distribute training result(8p, dynamic shape) -... -2021-08-05 16:01:34,116:INFO:epoch[0], iter[200], loss:415.453676, fps:580.07 imgs/sec, lr:0.0002742903889156878 -2021-08-05 16:01:57,588:INFO:epoch[0], iter[300], loss:273.358383, fps:545.96 imgs/sec, lr:0.00041075327317230403 -2021-08-05 16:02:26,247:INFO:epoch[0], iter[400], loss:244.621502, fps:446.64 imgs/sec, lr:0.0005472161574289203 -2021-08-05 16:02:55,532:INFO:epoch[0], iter[500], loss:234.524876, fps:437.10 imgs/sec, lr:0.000683679012581706 -2021-08-05 16:03:25,046:INFO:epoch[0], iter[600], loss:235.185213, fps:434.08 imgs/sec, lr:0.0008201419259421527 -2021-08-05 16:03:54,585:INFO:epoch[0], iter[700], loss:228.878598, fps:433.48 imgs/sec, lr:0.0009566047810949385 -2021-08-05 16:04:23,932:INFO:epoch[0], iter[800], loss:219.259134, fps:436.29 imgs/sec, lr:0.0010930676944553852 -2021-08-05 16:04:52,707:INFO:epoch[0], iter[900], loss:225.741833, fps:444.84 imgs/sec, lr:0.001229530549608171 -2021-08-05 16:05:21,872:INFO:epoch[1], iter[1000], loss:218.811336, fps:438.91 imgs/sec, lr:0.0013659934047609568 -2021-08-05 16:05:51,216:INFO:epoch[1], iter[1100], loss:219.491889, fps:436.50 imgs/sec, lr:0.0015024563763290644 -2021-08-05 16:06:20,546:INFO:epoch[1], iter[1200], loss:219.895906, fps:436.57 imgs/sec, lr:0.0016389192314818501 -2021-08-05 16:06:49,521:INFO:epoch[1], iter[1300], loss:218.516680, fps:441.79 imgs/sec, lr:0.001775382086634636 -2021-08-05 16:07:18,303:INFO:epoch[1], iter[1400], loss:209.922935, fps:444.79 imgs/sec, lr:0.0019118449417874217 -2021-08-05 16:07:47,702:INFO:epoch[1], iter[1500], loss:210.997816, fps:435.60 imgs/sec, lr:0.0020483077969402075 -2021-08-05 16:08:16,482:INFO:epoch[1], iter[1600], loss:210.678421, fps:444.88 imgs/sec, lr:0.002184770768508315 -2021-08-05 16:08:45,568:INFO:epoch[1], iter[1700], loss:203.285874, fps:440.07 imgs/sec, lr:0.0023212337400764227 -2021-08-05 16:09:13,947:INFO:epoch[1], iter[1800], loss:203.014775, fps:451.11 imgs/sec, lr:0.0024576964788138866 -2021-08-05 16:09:42,954:INFO:epoch[2], iter[1900], loss:194.683969, fps:441.28 imgs/sec, lr:0.0025941594503819942 -... -``` - -## [Evaluation Process](#contents) - -### Evaluation - -Before running the command below, please check the checkpoint path used for evaluation. The file **yolov5.ckpt** used in the follow script is the last saved checkpoint file, but we renamed it to "yolov5.ckpt". - -```shell -# run evaluation by python command -python eval.py \ - --data_dir=xxx/dataset \ - --pretrained=xxx/yolov5.ckpt \ - --eval_shape=640 > log.txt 2>&1 & -OR -# run evaluation by shell script -bash run_eval.sh [DATASET_PATH] [CHECKPOINT_PATH] -``` - -The above python command will run in the background. You can view the results through the file "log.txt". The mAP of the test dataset will be as follows: - -```text -# log.txt -=============coco eval reulst========= -Average Precision (AP) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.369 -Average Precision (AP) @[ IoU=0.50 | area= all | maxDets=100 ] = 0.573 -Average Precision (AP) @[ IoU=0.75 | area= all | maxDets=100 ] = 0.395 -Average Precision (AP) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.218 -Average Precision (AP) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.418 -Average Precision (AP) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.482 -Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 1 ] = 0.298 -Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 10 ] = 0.501 -Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.557 -Average Recall (AR) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.395 -Average Recall (AR) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.619 -Average Recall (AR) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.677 -2020-12-21 17:16:40,322:INFO:testing cost time 0.35h -``` - -## Inference Process - -### [Export MindIR](#contents) - -```shell -python export.py --ckpt_file [CKPT_PATH] --file_name [FILE_NAME] --file_format [FILE_FORMAT] -``` - -The ckpt_file parameter is required, -`file_format` should be in ["AIR", "MINDIR"] - -### Infer on Ascend310 - -Before performing inference, the mindir file must be exported by `export.py` script. We only provide an example of inference using MINDIR model. -Current batch_Size can only be set to 1. - -```shell -# Ascend310 inference -bash run_infer_310.sh [MINDIR_PATH] [DATA_PATH] [ANN_FILE] [DVPP] [DEVICE_ID] -``` - -- `DVPP` is mandatory, and must choose from ["DVPP", "CPU"], it's case-insensitive. The DVPP hardware restricts width 16-alignment and height even-alignment. Therefore, the network needs to use the CPU operator to process images. -- `DATA_PATH` is mandatory, path of the dataset containing images. -- `ANN_FILE` is mandatory, path to annotation file. -- `DEVICE_ID` is optional, default value is 0. - -### result - -Inference result is saved in current path, you can find result like this in acc.log file. - -```text -Average Precision (AP) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.369 -Average Precision (AP) @[ IoU=0.50 | area= all | maxDets=100 ] = 0.573 -Average Precision (AP) @[ IoU=0.75 | area= all | maxDets=100 ] = 0.395 -Average Precision (AP) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.218 -Average Precision (AP) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.418 -Average Precision (AP) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.482 -Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 1 ] = 0.298 -Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 10 ] = 0.501 -Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.557 -Average Recall (AR) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.395 -Average Recall (AR) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.619 -Average Recall (AR) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.677 -``` - -### [Export ONNX](#contents) - -- Export your model to ONNX: - - ```shell - python export.py --ckpt_file /path/to/yolov5.ckpt --file_name /path/to/yolov5.onnx --file_format ONNX - ``` - -### Run ONNX evaluation - -- Run ONNX evaluation from yolov5 directory: - - ```shell - bash scripts/run_eval_onnx.sh [] - ``` - -### result - -- You can view the results through the file eval.log. The mAP of the validation dataset will be as follows: - - ```text - =============coco eval result========= - Average Precision (AP) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.366 - Average Precision (AP) @[ IoU=0.50 | area= all | maxDets=100 ] = 0.569 - Average Precision (AP) @[ IoU=0.75 | area= all | maxDets=100 ] = 0.397 - Average Precision (AP) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.213 - Average Precision (AP) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.415 - Average Precision (AP) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.474 - Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 1 ] = 0.299 - Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 10 ] = 0.501 - Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.557 - Average Recall (AR) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.399 - Average Recall (AR) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.611 - Average Recall (AR) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.677 - ``` - -# [Model Description](#contents) - -## [Performance](#contents) - -### Evaluation Performance - -YOLOv5 on 118K images(The annotation and data format must be the same as coco2017) - -| Parameters | YOLOv5s | YOLOv5s | -| -------------------------- | ------------------------------------------------------------ | ------------------------------------------------------------ | -| Resource | Ascend 910 ;CPU 2.60GHz,192cores; Memory, 755G | GPU NV SMX2 V100-32G | -| uploaded Date | 7/12/2021 (month/day/year) | 9/15/2021 (month/day/year) | -| MindSpore Version | 1.2.0 | 1.3.0 | -| Dataset | 118K images | 118K images | -| Training Parameters | epoch=300, batch_size=8, lr=0.02,momentum=0.9,warmup_epoch=20| epoch=300, batch_size=32, lr=0.025, warmup_epoch=20, 8p | -| Optimizer | Momentum | Momentum | -| Loss Function | Sigmoid Cross Entropy with logits, Giou Loss | Sigmoid Cross Entropy with logits, Giou Loss | -| outputs | boxes and label | boxes and label | -| Loss | 111.970097 | 85 | -| Speed | 8p about 450 FPS | 8p about 290 FPS | -| Total time | 8p 21h28min | 8p 35h | -| Checkpoint for Fine tuning | 53.62M (.ckpt file) | 58.87M (.ckpt file) | -| Scripts | https://gitee.com/mindspore/models/tree/master/official/cv/yolov5 | https://gitee.com/mindspore/models/tree/master/official/cv/yolov5 | - -### Inference Performance - -| Parameters | YOLOv5s | YOLOv5s | -| ------------------- | -----------------------------------------------| ---------------------------------------------| -| Resource | Ascend 910 ;CPU 2.60GHz,192cores; Memory, 755G | GPU NV SMX2 V100-32G | -| Uploaded Date | 7/12/2021 (month/day/year) | 9/15/2021 (month/day/year) | -| MindSpore Version | 1.2.0 | 1.3.0 | -| Dataset | 20K images | 20K images | -| batch_size | 1 | 1 | -| outputs | box position and sorces, and probability | box position and sorces, and probability | -| Accuracy | mAP >= 36.7%(shape=640) | mAP >= 36.7%(shape=640) | -| Model for inference | 56.67M (.ckpt file) | 58.87M (.ckpt file) | - -### Transfer Learning - -# [Description of Random Situation](#contents) - -In dataset.py, we set the seed inside “create_dataset" function. We also use random seed in train.py. - -# [ModelZoo Homepage](#contents) - - Please check the official [homepage](https://gitee.com/mindspore/models). diff --git a/yolov5/default_config.yaml b/yolov5/default_config.yaml deleted file mode 100644 index fd77c58..0000000 --- a/yolov5/default_config.yaml +++ /dev/null @@ -1,175 +0,0 @@ -# Builtin Configurations(DO NOT CHANGE THESE CONFIGURATIONS unless you know exactly what you are doing) -enable_modelarts: False -# Url for modelarts -data_url: "" -train_url: "" -checkpoint_url: "" -outputs_url: "" -# Path for local -data_path: "/cache/data" -output_path: "/cache/train" -load_path: "/cache/checkpoint_path" -device_target: "Ascend" -need_modelarts_dataset_unzip: True -modelarts_dataset_unzip_name: "coco" - -# ============================================================================== -# Train options -data_dir: "/data/coco" -per_batch_size: 32 -yolov5_version: "yolov5s" -pretrained_backbone: "" -resume_yolov5: "" -pretrained_checkpoint: "" -output_dir: "./output" -train_img_dir: "train2017" -train_json_file: "annotations/instances_train2017.json" - -lr_scheduler: "cosine_annealing" -lr: 0.01 -lr_epochs: "220,250" -lr_gamma: 0.1 -eta_min: 0.0 -T_max: 300 # please set 320 when run on 1p -max_epoch: 300 # please set 320 when run on 1p -warmup_epochs: 20 # please set 4 when run on 1p -weight_decay: 0.0005 -momentum: 0.9 -loss_scale: 1024 -label_smooth: 0 -label_smooth_factor: 0.1 -log_interval: 100 -ckpt_path: "outputs/" -is_distributed: 0 -bind_cpu: True -device_num: 8 -rank: 0 -group_size: 1 -need_profiler: 0 -resize_rate: 10 -filter_weight: False - -# Eval options -pretrained: "" -log_path: "outputs/" -ann_val_file: "" -eval_nms_thresh: 0.6 -ignore_threshold: 0.7 -test_ignore_threshold: 0.001 -multi_label: True -multi_label_thresh: 0.1 - -# Export options -device_id: 0 -batch_size: 1 -testing_shape: [640, 640] -ckpt_file: "" -file_name: "yolov5" -file_format: "MINDIR" -dataset_path: "" -ann_file: "" - - -# Other default config -hue: 0.015 -saturation: 1.5 -value: 0.4 -jitter: 0.3 - -num_classes: 80 -max_box: 150 -checkpoint_filter_list: ['feature_map.back_block1.conv.weight', 'feature_map.back_block1.conv.bias', - 'feature_map.back_block2.conv.weight', 'feature_map.back_block2.conv.bias', - 'feature_map.back_block3.conv.weight', 'feature_map.back_block3.conv.bias'] - -# h->w -anchor_scales: [[12, 16], - [19, 36], - [40, 28], - [36, 75], - [76, 55], - [72, 146], - [142, 110], - [192, 243], - [459, 401]] - -out_channel: 255 # 3 * (num_classes + 5) - -input_shape: [[3, 32, 64, 128, 256, 512, 1], - [3, 48, 96, 192, 384, 768, 2], - [3, 64, 128, 256, 512, 1024, 3], - [3, 80, 160, 320, 640, 1280, 4]] - -# test_param -test_img_shape: [640, 640] - -labels: [ 'person', 'bicycle', 'car', 'motorcycle', 'airplane', 'bus', 'train', 'truck', 'boat', - 'traffic light', 'fire hydrant', 'stop sign', 'parking meter', 'bench', 'bird', 'cat', - 'dog', 'horse', 'sheep', 'cow', 'elephant', 'bear', 'zebra', 'giraffe', 'backpack', - 'umbrella', 'handbag', 'tie', 'suitcase', 'frisbee', 'skis', 'snowboard', 'sports ball', - 'kite', 'baseball bat', 'baseball glove', 'skateboard', 'surfboard', 'tennis racket', - 'bottle', 'wine glass', 'cup', 'fork', 'knife', 'spoon', 'bowl', 'banana', 'apple', - 'sandwich', 'orange', 'broccoli', 'carrot', 'hot dog', 'pizza', 'donut', 'cake', 'chair', - 'couch', 'potted plant', 'bed', 'dining table', 'toilet', 'tv', 'laptop', 'mouse', 'remote', - 'keyboard', 'cell phone', 'microwave', 'oven', 'toaster', 'sink', 'refrigerator', 'book', - 'clock', 'vase', 'scissors', 'teddy bear', 'hair drier', 'toothbrush' ] - -coco_ids: [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 27, - 28, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 67, 70, 72, 73, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 84, 85, 86, 87, 88, 89, 90 ] - -result_files: './result_Files' - ---- - -# Help description for each configuration -# Train options -data_dir: "Train dataset directory." -per_batch_size: "Batch size for Training." -pretrained_backbone: "The ckpt file of CspDarkNet53." -resume_yolov5: "The ckpt file of YOLOv5, which used to fine tune." -pretrained_checkpoint: "The ckpt file of YOLOv5CspDarkNet53." -lr_scheduler: "Learning rate scheduler, options: exponential, cosine_annealing." -lr: "Learning rate." -lr_epochs: "Epoch of changing of lr changing, split with ','." -lr_gamma: "Decrease lr by a factor of exponential lr_scheduler." -eta_min: "Eta_min in cosine_annealing scheduler." -T_max: "T-max in cosine_annealing scheduler." -max_epoch: "Max epoch num to train the model." -warmup_epochs: "Warmup epochs." -weight_decay: "Weight decay factor." -momentum: "Momentum." -loss_scale: "Static loss scale." -label_smooth: "Whether to use label smooth in CE." -label_smooth_factor: "Smooth strength of original one-hot." -log_interval: "Logging interval steps." -ckpt_path: "Checkpoint save location." -ckpt_interval: "Save checkpoint interval." -is_save_on_master: "Save ckpt on master or all rank, 1 for master, 0 for all ranks." -is_distributed: "Distribute train or not, 1 for yes, 0 for no." -bind_cpu: "Whether bind cpu when distributed training." -device_num: "Device numbers per server" -rank: "Local rank of distributed." -group_size: "World size of device." -need_profiler: "Whether use profiler. 0 for no, 1 for yes." -resize_rate: "Resize rate for multi-scale training." -ann_file: "path to annotation" -each_multiscale: "Apply multi-scale for each scale" -labels: "the label of train data" -multi_label: "use multi label to nms" -multi_label_thresh: "multi label thresh" - -# Eval options -pretrained: "model_path, local pretrained model to load" -log_path: "checkpoint save location" -ann_val_file: "path to annotation" - -# Export options -device_id: "Device id for export" -batch_size: "batch size for export" -testing_shape: "shape for test" -ckpt_file: "Checkpoint file path for export" -file_name: "output file name for export" -file_format: "file format for export" -result_files: 'path to 310 infer result floder' diff --git a/yolov5/eval.py b/yolov5/eval.py deleted file mode 100644 index 0f16e21..0000000 --- a/yolov5/eval.py +++ /dev/null @@ -1,115 +0,0 @@ -# Copyright 2021 Huawei Technologies Co., Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================ -"""YoloV5 eval.""" -import os -import time - -import numpy as np - -import mindspore as ms - -from src.yolo import YOLOV5 -from src.logger import get_logger -from src.util import DetectionEngine -from src.yolo_dataset import create_yolo_dataset - -from model_utils.config import config - -# only useful for huawei cloud modelarts -from model_utils.moxing_adapter import moxing_wrapper, modelarts_pre_process - - -def eval_preprocess(): - config.data_root = os.path.join(config.data_dir, 'val2017') - config.ann_file = os.path.join(config.data_dir, 'annotations/instances_val2017.json') - device_id = int(os.getenv('DEVICE_ID', '0')) - ms.set_context(mode=ms.GRAPH_MODE, device_target=config.device_target, device_id=device_id) - - # logger module is managed by config, it is used in other function. e.x. config.logger.info("xxx") - config.logger = get_logger(config.output_dir, device_id) - - -def load_parameters(network, filename): - config.logger.info("yolov5 pretrained network model: %s", filename) - param_dict = ms.load_checkpoint(filename) - param_dict_new = {} - for key, values in param_dict.items(): - if key.startswith('moments.'): - continue - elif key.startswith('yolo_network.'): - param_dict_new[key[13:]] = values - else: - param_dict_new[key] = values - ms.load_param_into_net(network, param_dict_new) - config.logger.info('load_model %s success', filename) - - -@moxing_wrapper(pre_process=modelarts_pre_process, pre_args=[config]) -def run_eval(): - eval_preprocess() - start_time = time.time() - config.logger.info('Creating Network....') - dict_version = {'yolov5s': 0, 'yolov5m': 1, 'yolov5l': 2, 'yolov5x': 3} - network = YOLOV5(is_training=False, version=dict_version[config.yolov5_version]) - - if os.path.isfile(config.pretrained): - load_parameters(network, config.pretrained) - else: - raise FileNotFoundError(f"{config.pretrained} is not a filename.") - - ds = create_yolo_dataset(config.data_root, config.ann_file, is_training=False, batch_size=config.per_batch_size, - device_num=1, rank=0, shuffle=False, config=config) - - config.logger.info('testing shape : %s', config.test_img_shape) - config.logger.info('total %d images to eval', ds.get_dataset_size() * config.per_batch_size) - - network.set_train(False) - - # init detection engine - detection = DetectionEngine(config, config.test_ignore_threshold) - - input_shape = ms.Tensor(tuple(config.test_img_shape), ms.float32) - config.logger.info('Start inference....') - for index, data in enumerate(ds.create_dict_iterator(output_numpy=True, num_epochs=1)): - image = data["image"] - # adapt network shape of input data - image = np.concatenate((image[..., ::2, ::2], image[..., 1::2, ::2], - image[..., ::2, 1::2], image[..., 1::2, 1::2]), axis=1) - image = ms.Tensor(image) - image_shape_ = data["image_shape"] - image_id_ = data["img_id"] - output_big, output_me, output_small = network(image, input_shape) - output_big = output_big.asnumpy() - output_me = output_me.asnumpy() - output_small = output_small.asnumpy() - detection.detect([output_small, output_me, output_big], config.per_batch_size, image_shape_, image_id_) - - if index % 50 == 0: - config.logger.info('Processing... {:.2f}% '.format(index / ds.get_dataset_size() * 100)) - - config.logger.info('Calculating mAP...') - detection.do_nms_for_results() - result_file_path = detection.write_result() - config.logger.info('result file path: %s', result_file_path) - eval_result = detection.get_eval_result() - - cost_time = time.time() - start_time - eval_log_string = '\n=============coco eval result=========\n' + eval_result - config.logger.info(eval_log_string) - config.logger.info('testing cost time %.2f h', cost_time / 3600.) - - -if __name__ == "__main__": - run_eval() diff --git a/yolov5/export.py b/yolov5/export.py deleted file mode 100644 index a629497..0000000 --- a/yolov5/export.py +++ /dev/null @@ -1,45 +0,0 @@ -# Copyright 2022 Huawei Technologies Co., Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================ -import mindspore as ms - -from src.yolo import YOLOV5s_Infer - -from model_utils.config import config -from model_utils.moxing_adapter import moxing_wrapper, modelarts_export_preprocess - - -@moxing_wrapper(pre_process=modelarts_export_preprocess, pre_args=[config]) -def run_export(): - ms.set_context(mode=ms.GRAPH_MODE, device_target=config.device_target) - if config.device_target == "Ascend": - ms.set_context(device_id=config.device_id) - - dict_version = {'yolov5s': 0, 'yolov5m': 1, 'yolov5l': 2, 'yolov5x': 3} - config.file_name = config.file_name + '_' + config.yolov5_version - - network = YOLOV5s_Infer(config.testing_shape[0], version=dict_version[config.yolov5_version]) - network.set_train(False) - - param_dict = ms.load_checkpoint(config.ckpt_file) - ms.load_param_into_net(network, param_dict) - - ts = config.testing_shape[0] // 2 - input_data = ms.numpy.zeros([config.batch_size, 12, ts, ts], ms.float32) - - ms.export(network, input_data, file_name=config.file_name, file_format=config.file_format) - print('==========success export===============') - -if __name__ == "__main__": - run_export() \ No newline at end of file diff --git a/yolov5/infer/data/models/coco2017.names b/yolov5/infer/data/models/coco2017.names deleted file mode 100644 index 1db41f5..0000000 --- a/yolov5/infer/data/models/coco2017.names +++ /dev/null @@ -1,81 +0,0 @@ -# This file is originally from https://github.com/pjreddie/darknet/blob/master/data/coco.names -person -bicycle -car -motorbike -aeroplane -bus -train -truck -boat -traffic light -fire hydrant -stop sign -parking meter -bench -bird -cat -dog -horse -sheep -cow -elephant -bear -zebra -giraffe -backpack -umbrella -handbag -tie -suitcase -frisbee -skis -snowboard -sports ball -kite -baseball bat -baseball glove -skateboard -surfboard -tennis racket -bottle -wine glass -cup -fork -knife -spoon -bowl -banana -apple -sandwich -orange -broccoli -carrot -hot dog -pizza -donut -cake -chair -sofa -pottedplant -bed -diningtable -toilet -tvmonitor -laptop -mouse -remote -keyboard -cell phone -microwave -oven -toaster -sink -refrigerator -book -clock -vase -scissors -teddy bear -hair drier -toothbrush diff --git a/yolov5/model_utils/config.py b/yolov5/model_utils/config.py deleted file mode 100644 index ad0d749..0000000 --- a/yolov5/model_utils/config.py +++ /dev/null @@ -1,126 +0,0 @@ -# Copyright 2021 Huawei Technologies Co., Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================ - -"""Parse arguments""" - -import os -import ast -import argparse -from pprint import pformat -import yaml - -class Config: - """ - Configuration namespace. Convert dictionary to members. - """ - def __init__(self, cfg_dict): - for k, v in cfg_dict.items(): - if isinstance(v, (list, tuple)): - setattr(self, k, [Config(x) if isinstance(x, dict) else x for x in v]) - else: - setattr(self, k, Config(v) if isinstance(v, dict) else v) - - def __str__(self): - return pformat(self.__dict__) - - def __repr__(self): - return self.__str__() - - -def parse_cli_to_yaml(parser, cfg, helper=None, choices=None, cfg_path="default_config.yaml"): - """ - Parse command line arguments to the configuration according to the default yaml. - - Args: - parser: Parent parser. - cfg: Base configuration. - helper: Helper description. - cfg_path: Path to the default yaml config. - """ - parser = argparse.ArgumentParser(description="[REPLACE THIS at config.py]", - parents=[parser]) - helper = {} if helper is None else helper - choices = {} if choices is None else choices - for item in cfg: - if not isinstance(cfg[item], list) and not isinstance(cfg[item], dict): - help_description = helper[item] if item in helper else "Please reference to {}".format(cfg_path) - choice = choices[item] if item in choices else None - if isinstance(cfg[item], bool): - parser.add_argument("--" + item, type=ast.literal_eval, default=cfg[item], choices=choice, - help=help_description) - else: - parser.add_argument("--" + item, type=type(cfg[item]), default=cfg[item], choices=choice, - help=help_description) - args = parser.parse_args() - return args - - -def parse_yaml(yaml_path): - """ - Parse the yaml config file. - - Args: - yaml_path: Path to the yaml config. - """ - with open(yaml_path, 'r') as fin: - try: - cfgs = yaml.load_all(fin.read(), Loader=yaml.FullLoader) - cfgs = [x for x in cfgs] - if len(cfgs) == 1: - cfg_helper = {} - cfg = cfgs[0] - cfg_choices = {} - elif len(cfgs) == 2: - cfg, cfg_helper = cfgs - cfg_choices = {} - elif len(cfgs) == 3: - cfg, cfg_helper, cfg_choices = cfgs - else: - raise ValueError("At most 3 docs (config, description for help, choices) are supported in config yaml") - print(cfg_helper) - except: - raise ValueError("Failed to parse yaml") - return cfg, cfg_helper, cfg_choices - - -def merge(args, cfg): - """ - Merge the base config from yaml file and command line arguments. - - Args: - args: Command line arguments. - cfg: Base configuration. - """ - args_var = vars(args) - for item in args_var: - cfg[item] = args_var[item] - return cfg - - -def get_config(): - """ - Get Config according to the yaml file and cli arguments. - """ - parser = argparse.ArgumentParser(description="default name", add_help=False) - current_dir = os.path.dirname(os.path.abspath(__file__)) - parser.add_argument("--config_path", type=str, default=os.path.join(current_dir, "../default_config.yaml"), - help="Config file path") - path_args, _ = parser.parse_known_args() - default, helper, choices = parse_yaml(path_args.config_path) - args = parse_cli_to_yaml(parser=parser, cfg=default, helper=helper, choices=choices, cfg_path=path_args.config_path) - final_config = merge(args, default) - return Config(final_config) - -config = get_config() diff --git a/yolov5/requirements.txt b/yolov5/requirements.txt deleted file mode 100644 index 715704d..0000000 --- a/yolov5/requirements.txt +++ /dev/null @@ -1,5 +0,0 @@ -numpy -pillow -opencv-python -pycocotools -onnxruntime-gpu diff --git a/yolov5/scripts/run_distribute_train.sh b/yolov5/scripts/run_distribute_train.sh deleted file mode 100644 index fd8b0fd..0000000 --- a/yolov5/scripts/run_distribute_train.sh +++ /dev/null @@ -1,78 +0,0 @@ -#!/bin/bash -# Copyright 2021 Huawei Technologies Co., Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================ - -if [ $# != 2 ] -then - echo "Usage: bash run_distribute_train.sh [DATASET_PATH] [RANK_TABLE_FILE]" -exit 1 -fi - -get_real_path(){ - if [ "${1:0:1}" == "/" ]; then - echo "$1" - else - echo "$(realpath -m $PWD/$1)" - fi -} - -DATASET_PATH=$(get_real_path $1) -RANK_TABLE_FILE=$(get_real_path $2) -echo $DATASET_PATH -echo $RANK_TABLE_FILE - -if [ ! -d $DATASET_PATH ] -then - echo "error: DATASET_PATH=$DATASET_PATH is not a directory" -exit 1 -fi - -if [ ! -f $RANK_TABLE_FILE ] -then - echo "error: RANK_TABLE_FILE=$RANK_TABLE_FILE is not a file" -exit 1 -fi - -export DEVICE_NUM=8 -export RANK_SIZE=8 -export RANK_TABLE_FILE=$RANK_TABLE_FILE - -cpus=`cat /proc/cpuinfo| grep "processor"| wc -l` -avg=`expr $cpus \/ $RANK_SIZE` -gap=`expr $avg \- 1` - -for((i=0; i<${DEVICE_NUM}; i++)) -do - start=`expr $i \* $avg` - end=`expr $start \+ $gap` - cmdopt=$start"-"$end - export DEVICE_ID=$i - export RANK_ID=$i - rm -rf ./train_parallel$i - mkdir ./train_parallel$i - cp ../*.py ./train_parallel$i - cp ../*.yaml ./train_parallel$i - cp -r ../src ./train_parallel$i - cp -r ../model_utils ./train_parallel$i - cd ./train_parallel$i || exit - echo "start training for rank $RANK_ID, device $DEVICE_ID" - env > env.log - taskset -c $cmdopt python train.py \ - --data_dir=$DATASET_PATH \ - --is_distributed=1 \ - --lr=0.02 \ - --per_batch_size=16 > log.txt 2>&1 & - cd .. -done diff --git a/yolov5/scripts/run_infer_310.sh b/yolov5/scripts/run_infer_310.sh deleted file mode 100644 index 69b0da0..0000000 --- a/yolov5/scripts/run_infer_310.sh +++ /dev/null @@ -1,109 +0,0 @@ -#!/bin/bash -# Copyright 2021 Huawei Technologies Co., Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================ - -if [[ $# -lt 4 || $# -gt 5 ]]; then - echo "Usage: bash run_infer_310.sh [MINDIR_PATH] [DATA_PATH] [ANN_FILE] [DVPP] [DEVICE_ID] - DVPP is mandatory, and must choose from [DVPP|CPU], it's case-insensitive - DEVICE_ID is optional, it can be set by environment variable device_id, otherwise the value is zero" -exit 1 -fi - -get_real_path(){ - if [ "${1:0:1}" == "/" ]; then - echo "$1" - else - echo "$(realpath -m $PWD/$1)" - fi -} -model=$(get_real_path $1) -data_path=$(get_real_path $2) -ann_file=$(get_real_path $3) -DVPP=${4^^} - -device_id=0 -if [ $# == 5 ]; then - device_id=$5 -fi - -echo "mindir name: "$model -echo "dataset path: "$data_path -echo "ann file: "$ann_file -echo "image process mode: "$DVPP -echo "device id: "$device_id - -export ASCEND_HOME=/usr/local/Ascend/ -if [ -d ${ASCEND_HOME}/ascend-toolkit ]; then - export PATH=$ASCEND_HOME/fwkacllib/bin:$ASCEND_HOME/fwkacllib/ccec_compiler/bin:$ASCEND_HOME/ascend-toolkit/latest/fwkacllib/ccec_compiler/bin:$ASCEND_HOME/ascend-toolkit/latest/atc/bin:$PATH - export LD_LIBRARY_PATH=$ASCEND_HOME/fwkacllib/lib64:/usr/local/lib:$ASCEND_HOME/ascend-toolkit/latest/atc/lib64:$ASCEND_HOME/ascend-toolkit/latest/fwkacllib/lib64:$ASCEND_HOME/driver/lib64:$ASCEND_HOME/add-ons:$LD_LIBRARY_PATH - export TBE_IMPL_PATH=$ASCEND_HOME/ascend-toolkit/latest/opp/op_impl/built-in/ai_core/tbe - export PYTHONPATH=$ASCEND_HOME/fwkacllib/python/site-packages:${TBE_IMPL_PATH}:$ASCEND_HOME/ascend-toolkit/latest/fwkacllib/python/site-packages:$PYTHONPATH - export ASCEND_OPP_PATH=$ASCEND_HOME/ascend-toolkit/latest/opp -else - export ASCEND_HOME=/usr/local/Ascend/latest/ - export PATH=$ASCEND_HOME/fwkacllib/bin:$ASCEND_HOME/fwkacllib/ccec_compiler/bin:$ASCEND_HOME/atc/ccec_compiler/bin:$ASCEND_HOME/atc/bin:$PATH - export LD_LIBRARY_PATH=$ASCEND_HOME/fwkacllib/lib64:/usr/local/lib:$ASCEND_HOME/atc/lib64:$ASCEND_HOME/acllib/lib64:$ASCEND_HOME/driver/lib64:$ASCEND_HOME/add-ons:$LD_LIBRARY_PATH - export PYTHONPATH=$ASCEND_HOME/fwkacllib/python/site-packages:$ASCEND_HOME/atc/python/site-packages:$PYTHONPATH - export ASCEND_OPP_PATH=$ASCEND_HOME/opp -fi - -function compile_app() -{ - cd ../ascend310_infer || exit - bash build.sh &> build.log -} - -function infer() -{ - cd - || exit - if [ -d result_Files ]; then - rm -rf ./result_Files - fi - if [ -d time_Result ]; then - rm -rf ./time_Result - fi - mkdir result_Files - mkdir time_Result - if [ "$DVPP" == "DVPP" ];then - echo "Only support CPU mode" - exit 1 - elif [ "$DVPP" == "CPU" ]; then - ../ascend310_infer/out/main --mindir_path=$model --dataset_path=$data_path --device_id=$device_id --image_height=640 --image_width=640 &> infer.log - else - echo "image process mode must be in [DVPP|CPU]" - exit 1 - fi -} - -function cal_acc() -{ - python ../postprocess.py --result_files=./result_Files --dataset_path=$data_path --ann_file=$ann_file &> acc.log & -} - -compile_app -if [ $? -ne 0 ]; then - echo "compile app code failed" - exit 1 -fi -infer -if [ $? -ne 0 ]; then - echo " execute inference failed" - exit 1 -fi -cal_acc -if [ $? -ne 0 ]; then - echo "calculate accuracy failed" - exit 1 -fi \ No newline at end of file diff --git a/yolov5/src/transforms.py b/yolov5/src/transforms.py deleted file mode 100644 index 3599419..0000000 --- a/yolov5/src/transforms.py +++ /dev/null @@ -1,623 +0,0 @@ -# Copyright 2021-2022 Huawei Technologies Co., Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================ -"""Preprocess dataset.""" -import random -import threading -import copy - -import numpy as np -from PIL import Image -import cv2 -import mindspore.dataset.vision as vision - - -def _rand(a=0., b=1.): - return np.random.rand() * (b - a) + a - - -def bbox_iou(bbox_a, bbox_b, offset=0): - """Calculate Intersection-Over-Union(IOU) of two bounding boxes. - - Parameters - ---------- - bbox_a : numpy.ndarray - An ndarray with shape :math:`(N, 4)`. - bbox_b : numpy.ndarray - An ndarray with shape :math:`(M, 4)`. - offset : float or int, default is 0 - The ``offset`` is used to control the whether the width(or height) is computed as - (right - left + ``offset``). - Note that the offset must be 0 for normalized bboxes, whose ranges are in ``[0, 1]``. - - Returns - ------- - numpy.ndarray - An ndarray with shape :math:`(N, M)` indicates IOU between each pairs of - bounding boxes in `bbox_a` and `bbox_b`. - - """ - if bbox_a.shape[1] < 4 or bbox_b.shape[1] < 4: - raise IndexError("Bounding boxes axis 1 must have at least length 4") - - tl = np.maximum(bbox_a[:, None, :2], bbox_b[:, :2]) - br = np.minimum(bbox_a[:, None, 2:4], bbox_b[:, 2:4]) - - area_i = np.prod(br - tl + offset, axis=2) * (tl < br).all(axis=2) - area_a = np.prod(bbox_a[:, 2:4] - bbox_a[:, :2] + offset, axis=1) - area_b = np.prod(bbox_b[:, 2:4] - bbox_b[:, :2] + offset, axis=1) - return area_i / (area_a[:, None] + area_b - area_i) - - -def statistic_normalize_img(img, statistic_norm): - """Statistic normalize images.""" - # img: RGB - if isinstance(img, Image.Image): - img = np.array(img) - img = img / 255. - # Computed from random subset of ImageNet training images - mean = np.array([0.485, 0.456, 0.406]) - std = np.array([0.229, 0.224, 0.225]) - if statistic_norm: - img = (img - mean) / std - return img - - -def get_interp_method(interp, sizes=()): - """ - Get the interpolation method for resize functions. - The major purpose of this function is to wrap a random interp method selection - and a auto-estimation method. - - Note: - When shrinking an image, it will generally look best with AREA-based - interpolation, whereas, when enlarging an image, it will generally look best - with Bicubic or Bilinear. - - Args: - interp (int): Interpolation method for all resizing operations. - - - 0: Nearest Neighbors Interpolation. - - 1: Bilinear interpolation. - - 2: Bicubic interpolation over 4x4 pixel neighborhood. - - 3: Nearest Neighbors. Originally it should be Area-based, as we cannot find Area-based, - so we use NN instead. Area-based (resampling using pixel area relation). - It may be a preferred method for image decimation, as it gives moire-free results. - But when the image is zoomed, it is similar to the Nearest Neighbors method. (used by default). - - 4: Lanczos interpolation over 8x8 pixel neighborhood. - - 9: Cubic for enlarge, area for shrink, bilinear for others. - - 10: Random select from interpolation method mentioned above. - - sizes (tuple): Format should like (old_height, old_width, new_height, new_width), - if None provided, auto(9) will return Area(2) anyway. Default: () - - Returns: - int, interp method from 0 to 4. - """ - if interp == 9: - if sizes: - assert len(sizes) == 4 - oh, ow, nh, nw = sizes - if nh > oh and nw > ow: - return 2 - if nh < oh and nw < ow: - return 0 - return 1 - return 2 - if interp == 10: - return random.randint(0, 4) - if interp not in (0, 1, 2, 3, 4): - raise ValueError('Unknown interp method %d' % interp) - return interp - - -def pil_image_reshape(interp): - """Reshape pil image.""" - reshape_type = { - 0: Image.NEAREST, - 1: Image.BILINEAR, - 2: Image.BICUBIC, - 3: Image.NEAREST, - 4: Image.LANCZOS, - } - return reshape_type[interp] - - -def _preprocess_true_boxes(true_boxes, anchors, in_shape, num_classes, max_boxes, label_smooth, - label_smooth_factor=0.1, iou_threshold=0.213): - """ - Introduction - ------------ - preprocessing ground truth box - Parameters - ---------- - true_boxes: ground truth box shape as [boxes, 5], x_min, y_min, x_max, y_max, class_id - """ - anchors = np.array(anchors) - num_layers = anchors.shape[0] // 3 - anchor_mask = [[6, 7, 8], [3, 4, 5], [0, 1, 2]] - true_boxes = np.array(true_boxes, dtype='float32') - input_shape = np.array(in_shape, dtype='int32') - boxes_xy = (true_boxes[..., 0:2] + true_boxes[..., 2:4]) // 2. - # trans to box center point - boxes_wh = true_boxes[..., 2:4] - true_boxes[..., 0:2] - # input_shape is [h, w] - true_boxes[..., 0:2] = boxes_xy / input_shape[::-1] - true_boxes[..., 2:4] = boxes_wh / input_shape[::-1] - # true_boxes = [xywh] - grid_shapes = [input_shape // 32, input_shape // 16, input_shape // 8] - # grid_shape [h, w] - y_true = [np.zeros((grid_shapes[l][0], grid_shapes[l][1], len(anchor_mask[l]), - 5 + num_classes), dtype='float32') for l in range(num_layers)] - # y_true [gridy, gridx] - anchors = np.expand_dims(anchors, 0) - anchors_max = anchors / 2. - anchors_min = -anchors_max - valid_mask = boxes_wh[..., 0] > 0 - wh = boxes_wh[valid_mask] - if wh.size != 0: - wh = np.expand_dims(wh, -2) - # wh shape[box_num, 1, 2] - boxes_max = wh / 2. - boxes_min = -boxes_max - intersect_min = np.maximum(boxes_min, anchors_min) - intersect_max = np.minimum(boxes_max, anchors_max) - intersect_wh = np.maximum(intersect_max - intersect_min, 0.) - intersect_area = intersect_wh[..., 0] * intersect_wh[..., 1] - box_area = wh[..., 0] * wh[..., 1] - anchor_area = anchors[..., 0] * anchors[..., 1] - iou = intersect_area / (box_area + anchor_area - intersect_area) - - # topk iou - topk = 4 - topk_flag = iou.argsort() - topk_flag = topk_flag >= topk_flag.shape[1] - topk - flag = topk_flag.nonzero() - for index in range(len(flag[0])): - t = flag[0][index] - n = flag[1][index] - if iou[t][n] < iou_threshold: - continue - for l in range(num_layers): - if n in anchor_mask[l]: - i = np.floor(true_boxes[t, 0] * grid_shapes[l][1]).astype('int32') # grid_y - j = np.floor(true_boxes[t, 1] * grid_shapes[l][0]).astype('int32') # grid_x - - k = anchor_mask[l].index(n) - c = true_boxes[t, 4].astype('int32') - y_true[l][j, i, k, 0:4] = true_boxes[t, 0:4] - y_true[l][j, i, k, 4] = 1. - - # lable-smooth - if label_smooth: - sigma = label_smooth_factor / (num_classes - 1) - y_true[l][j, i, k, 5:] = sigma - y_true[l][j, i, k, 5 + c] = 1 - label_smooth_factor - else: - y_true[l][j, i, k, 5 + c] = 1. - # best anchor for gt - best_anchor = np.argmax(iou, axis=-1) - for t, n in enumerate(best_anchor): - for l in range(num_layers): - if n in anchor_mask[l]: - i = np.floor(true_boxes[t, 0] * grid_shapes[l][1]).astype('int32') # grid_y - j = np.floor(true_boxes[t, 1] * grid_shapes[l][0]).astype('int32') # grid_x - - k = anchor_mask[l].index(n) - c = true_boxes[t, 4].astype('int32') - y_true[l][j, i, k, 0:4] = true_boxes[t, 0:4] - y_true[l][j, i, k, 4] = 1. - - # lable-smooth - if label_smooth: - sigma = label_smooth_factor / (num_classes - 1) - y_true[l][j, i, k, 5:] = sigma - y_true[l][j, i, k, 5 + c] = 1 - label_smooth_factor - else: - y_true[l][j, i, k, 5 + c] = 1. - - # pad_gt_boxes for avoiding dynamic shape - pad_gt_box0 = np.zeros(shape=[max_boxes, 4], dtype=np.float32) - pad_gt_box1 = np.zeros(shape=[max_boxes, 4], dtype=np.float32) - pad_gt_box2 = np.zeros(shape=[max_boxes, 4], dtype=np.float32) - - mask0 = np.reshape(y_true[0][..., 4:5], [-1]) - gt_box0 = np.reshape(y_true[0][..., 0:4], [-1, 4]) - # gt_box [boxes, [x,y,w,h]] - gt_box0 = gt_box0[mask0 == 1] - # gt_box0: get all boxes which have object - if gt_box0.shape[0] < max_boxes: - pad_gt_box0[:gt_box0.shape[0]] = gt_box0 - else: - pad_gt_box0 = gt_box0[:max_boxes] - # gt_box0.shape[0]: total number of boxes in gt_box0 - # top N of pad_gt_box0 is real box, and after are pad by zero - - mask1 = np.reshape(y_true[1][..., 4:5], [-1]) - gt_box1 = np.reshape(y_true[1][..., 0:4], [-1, 4]) - gt_box1 = gt_box1[mask1 == 1] - if gt_box1.shape[0] < max_boxes: - pad_gt_box1[:gt_box1.shape[0]] = gt_box1 - else: - pad_gt_box1 = gt_box1[:max_boxes] - - mask2 = np.reshape(y_true[2][..., 4:5], [-1]) - gt_box2 = np.reshape(y_true[2][..., 0:4], [-1, 4]) - - gt_box2 = gt_box2[mask2 == 1] - if gt_box2.shape[0] < max_boxes: - pad_gt_box2[:gt_box2.shape[0]] = gt_box2 - else: - pad_gt_box2 = gt_box2[:max_boxes] - return y_true[0], y_true[1], y_true[2], pad_gt_box0, pad_gt_box1, pad_gt_box2 - - -class PreprocessTrueBox: - def __init__(self, config): - self.anchor_scales = config.anchor_scales - self.num_classes = config.num_classes - self.max_box = config.max_box - self.label_smooth = config.label_smooth - self.label_smooth_factor = config.label_smooth_factor - - def __call__(self, anno, input_shape): - bbox_true_1, bbox_true_2, bbox_true_3, gt_box1, gt_box2, gt_box3 = \ - _preprocess_true_boxes(true_boxes=anno, anchors=self.anchor_scales, in_shape=input_shape, - num_classes=self.num_classes, max_boxes=self.max_box, - label_smooth=self.label_smooth, label_smooth_factor=self.label_smooth_factor) - return anno, np.array(bbox_true_1), np.array(bbox_true_2), np.array(bbox_true_3), \ - np.array(gt_box1), np.array(gt_box2), np.array(gt_box3) - - -def _reshape_data(image, image_size): - """Reshape image.""" - if not isinstance(image, Image.Image): - image = Image.fromarray(image) - ori_w, ori_h = image.size - ori_image_shape = np.array([ori_w, ori_h], np.int32) - # original image shape fir:H sec:W - h, w = image_size - interp = get_interp_method(interp=9, sizes=(ori_h, ori_w, h, w)) - image = image.resize((w, h), pil_image_reshape(interp)) - image_data = statistic_normalize_img(image, statistic_norm=True) - if len(image_data.shape) == 2: - image_data = np.expand_dims(image_data, axis=-1) - image_data = np.concatenate([image_data, image_data, image_data], axis=-1) - image_data = image_data.astype(np.float32) - return image_data, ori_image_shape - - -def color_distortion(img, hue, sat, val, device_num): - """Color distortion.""" - hue = _rand(-hue, hue) - sat = _rand(1, sat) if _rand() < .5 else 1 / _rand(1, sat) - val = _rand(1, val) if _rand() < .5 else 1 / _rand(1, val) - if device_num != 1: - cv2.setNumThreads(1) - x = cv2.cvtColor(img, cv2.COLOR_RGB2HSV_FULL) - x = x / 255. - x[..., 0] += hue - x[..., 0][x[..., 0] > 1] -= 1 - x[..., 0][x[..., 0] < 0] += 1 - x[..., 1] *= sat - x[..., 2] *= val - x[x > 1] = 1 - x[x < 0] = 0 - x = x * 255. - x = x.astype(np.uint8) - image_data = cv2.cvtColor(x, cv2.COLOR_HSV2RGB_FULL) - return image_data - - -def filp_pil_image(img): - return img.transpose(Image.FLIP_LEFT_RIGHT) - - -def convert_gray_to_color(img): - if len(img.shape) == 2: - img = np.expand_dims(img, axis=-1) - img = np.concatenate([img, img, img], axis=-1) - return img - - -def _is_iou_satisfied_constraint(min_iou, max_iou, box, crop_box): - iou = bbox_iou(box, crop_box) - return min_iou <= iou.min() and max_iou >= iou.max() - - -def _choose_candidate_by_constraints(max_trial, input_w, input_h, image_w, image_h, jitter, box, use_constraints): - """Choose candidate by constraints.""" - if use_constraints: - constraints = ( - (0.1, None), - (0.3, None), - (0.5, None), - (0.7, None), - (0.9, None), - (None, 1), - ) - else: - constraints = ((None, None),) - # add default candidate - candidates = [(0, 0, input_w, input_h)] - for constraint in constraints: - min_iou, max_iou = constraint - min_iou = -np.inf if min_iou is None else min_iou - max_iou = np.inf if max_iou is None else max_iou - - for _ in range(max_trial): - # box_data should have at least one box - new_ar = float(input_w) / float(input_h) * _rand(1 - jitter, 1 + jitter) / _rand(1 - jitter, 1 + jitter) - scale = _rand(0.5, 2) - - if new_ar < 1: - nh = int(scale * input_h) - nw = int(nh * new_ar) - else: - nw = int(scale * input_w) - nh = int(nw / new_ar) - - dx = int(_rand(0, input_w - nw)) - dy = int(_rand(0, input_h - nh)) - - if box.size > 0: - t_box = copy.deepcopy(box) - t_box[:, [0, 2]] = t_box[:, [0, 2]] * float(nw) / float(image_w) + dx - t_box[:, [1, 3]] = t_box[:, [1, 3]] * float(nh) / float(image_h) + dy - - crop_box = np.array((0, 0, input_w, input_h)) - if not _is_iou_satisfied_constraint(min_iou, max_iou, t_box, crop_box[np.newaxis]): - continue - else: - candidates.append((dx, dy, nw, nh)) - else: - raise Exception("!!! annotation box is less than 1") - return candidates - - -def _correct_bbox_by_candidates(candidates, input_w, input_h, image_w, - image_h, flip, box, box_data, allow_outside_center, max_boxes): - """Calculate correct boxes.""" - while candidates: - if len(candidates) > 1: - # ignore default candidate which do not crop - candidate = candidates.pop(np.random.randint(1, len(candidates))) - else: - candidate = candidates.pop(np.random.randint(0, len(candidates))) - dx, dy, nw, nh = candidate - t_box = copy.deepcopy(box) - t_box[:, [0, 2]] = t_box[:, [0, 2]] * float(nw) / float(image_w) + dx - t_box[:, [1, 3]] = t_box[:, [1, 3]] * float(nh) / float(image_h) + dy - if flip: - t_box[:, [0, 2]] = input_w - t_box[:, [2, 0]] - - if allow_outside_center: - pass - else: - t_box = t_box[ - np.logical_and((t_box[:, 0] + t_box[:, 2]) / 2. >= 0., (t_box[:, 1] + t_box[:, 3]) / 2. >= 0.)] - t_box = t_box[np.logical_and((t_box[:, 0] + t_box[:, 2]) / 2. <= input_w, - (t_box[:, 1] + t_box[:, 3]) / 2. <= input_h)] - - # recorrect x, y for case x,y < 0 reset to zero, after dx and dy, some box can smaller than zero - t_box[:, 0:2][t_box[:, 0:2] < 0] = 0 - # recorrect w,h not higher than input size - t_box[:, 2][t_box[:, 2] > input_w] = input_w - t_box[:, 3][t_box[:, 3] > input_h] = input_h - box_w = t_box[:, 2] - t_box[:, 0] - box_h = t_box[:, 3] - t_box[:, 1] - # discard invalid box: w or h smaller than 1 pixel - t_box = t_box[np.logical_and(box_w > 1, box_h > 1)] - - if t_box.shape[0] > 0: - # break if number of find t_box - box_data[: len(t_box)] = t_box - return box_data, candidate - return np.zeros(shape=[max_boxes, 5], dtype=np.float64), (0, 0, nw, nh) - - -def _data_aug(image, box, jitter, hue, sat, val, image_input_size, max_boxes, - anchors, num_classes, max_trial=10, device_num=1): - """Crop an image randomly with bounding box constraints. - - This data augmentation is used in training of - Single Shot Multibox Detector [#]_. More details can be found in - data augmentation section of the original paper. - .. [#] Wei Liu, Dragomir Anguelov, Dumitru Erhan, Christian Szegedy, - Scott Reed, Cheng-Yang Fu, Alexander C. Berg. - SSD: Single Shot MultiBox Detector. ECCV 2016.""" - - if not isinstance(image, Image.Image): - image = Image.fromarray(image) - - image_w, image_h = image.size - input_h, input_w = image_input_size - - np.random.shuffle(box) - if len(box) > max_boxes: - box = box[:max_boxes] - flip = _rand() < .5 - box_data = np.zeros((max_boxes, 5)) - - candidates = _choose_candidate_by_constraints(use_constraints=False, max_trial=max_trial, input_w=input_w, - input_h=input_h, image_w=image_w, image_h=image_h, - jitter=jitter, box=box) - box_data, candidate = _correct_bbox_by_candidates(candidates=candidates, input_w=input_w, input_h=input_h, - image_w=image_w, image_h=image_h, flip=flip, box=box, - box_data=box_data, allow_outside_center=True, max_boxes=max_boxes) - dx, dy, nw, nh = candidate - interp = get_interp_method(interp=10) - image = image.resize((nw, nh), pil_image_reshape(interp)) - # place image, gray color as back graoud - new_image = Image.new('RGB', (input_w, input_h), (128, 128, 128)) - new_image.paste(image, (dx, dy)) - image = new_image - - if flip: - image = filp_pil_image(image) - - image = np.array(image) - image = convert_gray_to_color(image) - image_data = color_distortion(image, hue, sat, val, device_num) - return image_data, box_data - - -def preprocess_fn(image, box, config, input_size, device_num): - """Preprocess data function.""" - config_anchors = config.anchor_scales - anchors = np.array([list(x) for x in config_anchors]) - max_boxes = config.max_box - num_classes = config.num_classes - jitter = config.jitter - hue = config.hue - sat = config.saturation - val = config.value - image, anno = _data_aug(image, box, jitter=jitter, hue=hue, sat=sat, val=val, - image_input_size=input_size, max_boxes=max_boxes, - num_classes=num_classes, anchors=anchors, device_num=device_num) - return image, anno - - -def reshape_fn(image, img_id, config): - input_size = config.test_img_shape - image, ori_image_shape = _reshape_data(image, image_size=input_size) - return image, ori_image_shape, img_id - - - -class MultiScaleTrans: - """Multi scale transform.""" - - def __init__(self, config, device_num): - self.config = config - self.seed = 0 - self.size_list = [] - self.resize_rate = config.resize_rate - self.dataset_size = config.dataset_size - self.size_dict = {} - self.seed_num = int(1e6) - self.seed_list = self.generate_seed_list(seed_num=self.seed_num) - self.resize_count_num = int(np.ceil(self.dataset_size / self.resize_rate)) - self.device_num = device_num - self.anchor_scales = config.anchor_scales - self.num_classes = config.num_classes - self.max_box = config.max_box - self.label_smooth = config.label_smooth - self.label_smooth_factor = config.label_smooth_factor - - def generate_seed_list(self, init_seed=1234, seed_num=int(1e6), seed_range=(1, 1000)): - seed_list = [] - random.seed(init_seed) - for _ in range(seed_num): - seed = random.randint(seed_range[0], seed_range[1]) - seed_list.append(seed) - return seed_list - - def __call__(self, img, anno, input_size, mosaic_flag): - if mosaic_flag[0] == 0: - img = vision.Decode(True)(img) - img, anno = preprocess_fn(img, anno, self.config, input_size, self.device_num) - return img, anno, np.array(img.shape[0:2]) - - -def thread_batch_preprocess_true_box(annos, config, input_shape, result_index, batch_bbox_true_1, batch_bbox_true_2, - batch_bbox_true_3, batch_gt_box1, batch_gt_box2, batch_gt_box3): - """Preprocess true box for multi-thread.""" - i = 0 - for anno in annos: - bbox_true_1, bbox_true_2, bbox_true_3, gt_box1, gt_box2, gt_box3 = \ - _preprocess_true_boxes(true_boxes=anno, anchors=config.anchor_scales, in_shape=input_shape, - num_classes=config.num_classes, max_boxes=config.max_box, - label_smooth=config.label_smooth, label_smooth_factor=config.label_smooth_factor) - batch_bbox_true_1[result_index + i] = bbox_true_1 - batch_bbox_true_2[result_index + i] = bbox_true_2 - batch_bbox_true_3[result_index + i] = bbox_true_3 - batch_gt_box1[result_index + i] = gt_box1 - batch_gt_box2[result_index + i] = gt_box2 - batch_gt_box3[result_index + i] = gt_box3 - i = i + 1 - - -def batch_preprocess_true_box(annos, config, input_shape): - """Preprocess true box with multi-thread.""" - batch_bbox_true_1 = [] - batch_bbox_true_2 = [] - batch_bbox_true_3 = [] - batch_gt_box1 = [] - batch_gt_box2 = [] - batch_gt_box3 = [] - threads = [] - - step = 4 - for index in range(0, len(annos), step): - for _ in range(step): - batch_bbox_true_1.append(None) - batch_bbox_true_2.append(None) - batch_bbox_true_3.append(None) - batch_gt_box1.append(None) - batch_gt_box2.append(None) - batch_gt_box3.append(None) - step_anno = annos[index: index + step] - t = threading.Thread(target=thread_batch_preprocess_true_box, - args=(step_anno, config, input_shape, index, batch_bbox_true_1, batch_bbox_true_2, - batch_bbox_true_3, batch_gt_box1, batch_gt_box2, batch_gt_box3)) - t.start() - threads.append(t) - - for t in threads: - t.join() - - return np.array(batch_bbox_true_1), np.array(batch_bbox_true_2), np.array(batch_bbox_true_3), \ - np.array(batch_gt_box1), np.array(batch_gt_box2), np.array(batch_gt_box3) - - -def batch_preprocess_true_box_single(annos, config, input_shape): - """Preprocess true boxes.""" - batch_bbox_true_1 = [] - batch_bbox_true_2 = [] - batch_bbox_true_3 = [] - batch_gt_box1 = [] - batch_gt_box2 = [] - batch_gt_box3 = [] - for anno in annos: - bbox_true_1, bbox_true_2, bbox_true_3, gt_box1, gt_box2, gt_box3 = \ - _preprocess_true_boxes(true_boxes=anno, anchors=config.anchor_scales, in_shape=input_shape, - num_classes=config.num_classes, max_boxes=config.max_box, - label_smooth=config.label_smooth, label_smooth_factor=config.label_smooth_factor) - batch_bbox_true_1.append(bbox_true_1) - batch_bbox_true_2.append(bbox_true_2) - batch_bbox_true_3.append(bbox_true_3) - batch_gt_box1.append(gt_box1) - batch_gt_box2.append(gt_box2) - batch_gt_box3.append(gt_box3) - - return np.array(batch_bbox_true_1), np.array(batch_bbox_true_2), np.array(batch_bbox_true_3), \ - np.array(batch_gt_box1), np.array(batch_gt_box2), np.array(batch_gt_box3) - - - - - - - - - - - - - - - - - diff --git a/yolov5/src/util.py b/yolov5/src/util.py deleted file mode 100644 index 8acc101..0000000 --- a/yolov5/src/util.py +++ /dev/null @@ -1,351 +0,0 @@ -# Copyright 2021 Huawei Technologies Co., Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================ -"""Util class or function.""" -import sys -from collections import defaultdict -import datetime -import numpy as np -from pycocotools.coco import COCO -from pycocotools.cocoeval import COCOeval - -import mindspore as ms - -from .yolo import YoloLossBlock - - -class AverageMeter: - """Computes and stores the average and current value""" - - def __init__(self, name, fmt=':f', tb_writer=None): - self.name = name - self.fmt = fmt - self.reset() - self.tb_writer = tb_writer - self.cur_step = 1 - self.val = 0 - self.avg = 0 - self.sum = 0 - self.count = 0 - - def reset(self): - self.val = 0 - self.avg = 0 - self.sum = 0 - self.count = 0 - - def update(self, val, n=1): - self.val = val - self.sum += val * n - self.count += n - self.avg = self.sum / self.count - if self.tb_writer is not None: - self.tb_writer.add_scalar(self.name, self.val, self.cur_step) - self.cur_step += 1 - - def __str__(self): - fmtstr = '{name}:{avg' + self.fmt + '}' - return fmtstr.format(**self.__dict__) - - -def default_wd_filter(x): - """default weight decay filter.""" - parameter_name = x.name - if parameter_name.endswith('.bias'): - # all bias not using weight decay - return False - if parameter_name.endswith('.gamma'): - # bn weight bias not using weight decay, be carefully for now x not - # include BN - return False - if parameter_name.endswith('.beta'): - # bn weight bias not using weight decay, be carefully for now x not - # include BN - return False - - return True - - -def get_param_groups(network): - """Param groups for optimizer.""" - decay_params = [] - no_decay_params = [] - for x in network.trainable_params(): - parameter_name = x.name - if parameter_name.endswith('.bias'): - # all bias not using weight decay - no_decay_params.append(x) - elif parameter_name.endswith('.gamma'): - # bn weight bias not using weight decay, be carefully for now x not - # include BN - no_decay_params.append(x) - elif parameter_name.endswith('.beta'): - # bn weight bias not using weight decay, be carefully for now x not - # include BN - no_decay_params.append(x) - else: - decay_params.append(x) - - return [{'params': no_decay_params, 'weight_decay': 0.0}, - {'params': decay_params}] - - -class ShapeRecord: - """Log image shape.""" - - def __init__(self): - self.shape_record = { - 416: 0, - 448: 0, - 480: 0, - 512: 0, - 544: 0, - 576: 0, - 608: 0, - 640: 0, - 672: 0, - 704: 0, - 736: 0, - 'total': 0 - } - - def set(self, shape): - if len(shape) > 1: - shape = shape[0] - shape = int(shape) - self.shape_record[shape] += 1 - self.shape_record['total'] += 1 - - def show(self, logger): - for key in self.shape_record: - rate = self.shape_record[key] / float(self.shape_record['total']) - logger.info('shape {}: {:.2f}%'.format(key, rate * 100)) - - -def keep_loss_fp32(network): - """Keep loss of network with float32""" - for _, cell in network.cells_and_names(): - if isinstance(cell, (YoloLossBlock,)): - cell.to_float(ms.float32) - - -class Redirct: - def __init__(self): - self.content = "" - - def write(self, content): - self.content += content - - def flush(self): - self.content = "" - - -def cpu_affinity(rank_id, device_num): - """Bind CPU cores according to rank_id and device_num.""" - import psutil - cores = psutil.cpu_count() - if cores < device_num: - return - process = psutil.Process() - used_cpu_num = cores // device_num - rank_id = rank_id % device_num - used_cpu_list = [i for i in range(rank_id * used_cpu_num, (rank_id + 1) * used_cpu_num)] - process.cpu_affinity(used_cpu_list) - print(f"==== {rank_id}/{device_num} ==== bind cpu: {used_cpu_list}") - - -class DetectionEngine: - """Detection engine.""" - - def __init__(self, args_detection, threshold): - self.ignore_threshold = threshold - self.labels = args_detection.labels - self.num_classes = len(self.labels) - self.results = {} - self.file_path = '' - self.save_prefix = args_detection.output_dir - self.ann_file = args_detection.ann_file - self._coco = COCO(self.ann_file) - self._img_ids = list(sorted(self._coco.imgs.keys())) - self.det_boxes = [] - self.nms_thresh = args_detection.eval_nms_thresh - self.multi_label = args_detection.multi_label - self.multi_label_thresh = args_detection.multi_label_thresh - self.coco_catids = self._coco.getCatIds() - self.coco_catIds = args_detection.coco_ids - - def do_nms_for_results(self): - """Get result boxes.""" - for img_id in self.results: - for clsi in self.results[img_id]: - dets = self.results[img_id][clsi] - dets = np.array(dets) - keep_index = self._diou_nms(dets, thresh=self.nms_thresh) - - keep_box = [{'image_id': int(img_id), 'category_id': int(clsi), - 'bbox': list(dets[i][:4].astype(float)), - 'score': dets[i][4].astype(float)} for i in keep_index] - self.det_boxes.extend(keep_box) - - def _nms(self, predicts, threshold): - """Calculate NMS.""" - # convert xywh -> xmin ymin xmax ymax - x1 = predicts[:, 0] - y1 = predicts[:, 1] - x2 = x1 + predicts[:, 2] - y2 = y1 + predicts[:, 3] - scores = predicts[:, 4] - - areas = (x2 - x1 + 1) * (y2 - y1 + 1) - order = scores.argsort()[::-1] - - reserved_boxes = [] - while order.size > 0: - i = order[0] - reserved_boxes.append(i) - max_x1 = np.maximum(x1[i], x1[order[1:]]) - max_y1 = np.maximum(y1[i], y1[order[1:]]) - min_x2 = np.minimum(x2[i], x2[order[1:]]) - min_y2 = np.minimum(y2[i], y2[order[1:]]) - - intersect_w = np.maximum(0.0, min_x2 - max_x1 + 1) - intersect_h = np.maximum(0.0, min_y2 - max_y1 + 1) - intersect_area = intersect_w * intersect_h - ovr = intersect_area / \ - (areas[i] + areas[order[1:]] - intersect_area) - - indexes = np.where(ovr <= threshold)[0] - order = order[indexes + 1] - return reserved_boxes - - def _diou_nms(self, dets, thresh=0.5): - """ - convert xywh -> xmin ymin xmax ymax - """ - x1 = dets[:, 0] - y1 = dets[:, 1] - x2 = x1 + dets[:, 2] - y2 = y1 + dets[:, 3] - scores = dets[:, 4] - areas = (x2 - x1 + 1) * (y2 - y1 + 1) - order = scores.argsort()[::-1] - keep = [] - while order.size > 0: - i = order[0] - keep.append(i) - xx1 = np.maximum(x1[i], x1[order[1:]]) - yy1 = np.maximum(y1[i], y1[order[1:]]) - xx2 = np.minimum(x2[i], x2[order[1:]]) - yy2 = np.minimum(y2[i], y2[order[1:]]) - - w = np.maximum(0.0, xx2 - xx1 + 1) - h = np.maximum(0.0, yy2 - yy1 + 1) - inter = w * h - ovr = inter / (areas[i] + areas[order[1:]] - inter) - center_x1 = (x1[i] + x2[i]) / 2 - center_x2 = (x1[order[1:]] + x2[order[1:]]) / 2 - center_y1 = (y1[i] + y2[i]) / 2 - center_y2 = (y1[order[1:]] + y2[order[1:]]) / 2 - inter_diag = (center_x2 - center_x1) ** 2 + (center_y2 - center_y1) ** 2 - out_max_x = np.maximum(x2[i], x2[order[1:]]) - out_max_y = np.maximum(y2[i], y2[order[1:]]) - out_min_x = np.minimum(x1[i], x1[order[1:]]) - out_min_y = np.minimum(y1[i], y1[order[1:]]) - outer_diag = (out_max_x - out_min_x) ** 2 + (out_max_y - out_min_y) ** 2 - diou = ovr - inter_diag / outer_diag - diou = np.clip(diou, -1, 1) - inds = np.where(diou <= thresh)[0] - order = order[inds + 1] - return keep - - def write_result(self): - """Save result to file.""" - import json - t = datetime.datetime.now().strftime('_%Y_%m_%d_%H_%M_%S') - try: - self.file_path = self.save_prefix + '/predict' + t + '.json' - f = open(self.file_path, 'w') - json.dump(self.det_boxes, f) - except IOError as e: - raise RuntimeError("Unable to open json file to dump. What(): {}".format(str(e))) - else: - f.close() - return self.file_path - - def get_eval_result(self): - """Get eval result.""" - coco_gt = COCO(self.ann_file) - coco_dt = coco_gt.loadRes(self.file_path) - coco_eval = COCOeval(coco_gt, coco_dt, 'bbox') - coco_eval.evaluate() - coco_eval.accumulate() - rdct = Redirct() - stdout = sys.stdout - sys.stdout = rdct - coco_eval.summarize() - sys.stdout = stdout - return rdct.content - - def detect(self, outputs, batch, image_shape, image_id): - """Detect boxes.""" - # output [|32, 52, 52, 3, 85| ] - for batch_id in range(batch): - for out_item in outputs: - # 52, 52, 3, 85 - out_item_single = out_item[batch_id, :] - ori_w, ori_h = image_shape[batch_id] - img_id = int(image_id[batch_id]) - if img_id not in self.results: - self.results[img_id] = defaultdict(list) - x = ori_w * out_item_single[..., 0].reshape(-1) - y = ori_h * out_item_single[..., 1].reshape(-1) - w = ori_w * out_item_single[..., 2].reshape(-1) - h = ori_h * out_item_single[..., 3].reshape(-1) - conf = out_item_single[..., 4:5] - cls_emb = out_item_single[..., 5:] - cls_argmax = np.expand_dims(np.argmax(cls_emb, axis=-1), axis=-1) - x_top_left = x - w / 2. - y_top_left = y - h / 2. - cls_emb = cls_emb.reshape(-1, self.num_classes) - if self.multi_label: - confidence = conf.reshape(-1, 1) * cls_emb - # create all False - flag = cls_emb > self.multi_label_thresh - flag = flag.nonzero() - for i, j in zip(*flag): - confi = confidence[i][j] - if confi < self.ignore_threshold: - continue - x_lefti, y_lefti = max(0, x_top_left[i]), max(0, y_top_left[i]) - wi, hi = min(w[i], ori_w), min(h[i], ori_h) - # transform catId to match coco - coco_clsi = self.coco_catIds[j] - self.results[img_id][coco_clsi].append([x_lefti, y_lefti, wi, hi, confi]) - else: - cls_argmax = cls_argmax.reshape(-1) - # create all False - flag = np.random.random(cls_emb.shape) > sys.maxsize - for i in range(flag.shape[0]): - c = cls_argmax[i] - flag[i, c] = True - confidence = conf.reshape(-1) * cls_emb[flag] - for x_lefti, y_lefti, wi, hi, confi, clsi in zip(x_top_left, y_top_left, - w, h, confidence, cls_argmax): - if confi < self.ignore_threshold: - continue - x_lefti, y_lefti = max(0, x_lefti), max(0, y_lefti) - wi, hi = min(wi, ori_w), min(hi, ori_h) - # transform catId to match coco - coco_clsi = self.coco_catids[clsi] - self.results[img_id][coco_clsi].append([x_lefti, y_lefti, wi, hi, confi]) diff --git a/yolov5/train.py b/yolov5/train.py deleted file mode 100644 index 5d1eca6..0000000 --- a/yolov5/train.py +++ /dev/null @@ -1,130 +0,0 @@ -# Copyright 2021 Huawei Technologies Co., Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================ -"""YoloV5 train.""" -import os -import time -import mindspore as ms -import mindspore.nn as nn -import mindspore.communication as comm - -from src.yolo import YOLOV5, YoloWithLossCell -from src.logger import get_logger -from src.util import AverageMeter, get_param_groups, cpu_affinity -from src.lr_scheduler import get_lr -from src.yolo_dataset import create_yolo_dataset -from src.initializer import default_recurisive_init, load_yolov5_params - -from model_utils.config import config -from model_utils.device_adapter import get_device_id - -# only useful for huawei cloud modelarts. -from model_utils.moxing_adapter import moxing_wrapper, modelarts_pre_process, modelarts_post_process - - -ms.set_seed(1) - - -def init_distribute(): - comm.init() - config.rank = comm.get_rank() - config.group_size = comm.get_group_size() - ms.set_auto_parallel_context(parallel_mode=ms.ParallelMode.DATA_PARALLEL, gradients_mean=True, - device_num=config.group_size) - - -def train_preprocess(): - if config.lr_scheduler == 'cosine_annealing' and config.max_epoch > config.T_max: - config.T_max = config.max_epoch - - config.lr_epochs = list(map(int, config.lr_epochs.split(','))) - config.data_root = os.path.join(config.data_dir, 'train2017') - config.annFile = os.path.join(config.data_dir, 'annotations/instances_train2017.json') - device_id = get_device_id() - ms.set_context(mode=ms.GRAPH_MODE, device_target=config.device_target, device_id=device_id) - - if config.is_distributed: - # init distributed - init_distribute() - - # for promoting performance in GPU device - if config.device_target == "GPU" and config.bind_cpu: - cpu_affinity(config.rank, min(config.group_size, config.device_num)) - - # logger module is managed by config, it is used in other function. e.x. config.logger.info("xxx") - config.logger = get_logger(config.output_dir, config.rank) - config.logger.save_args(config) - - -@moxing_wrapper(pre_process=modelarts_pre_process, post_process=modelarts_post_process, pre_args=[config]) -def run_train(): - train_preprocess() - - loss_meter = AverageMeter('loss') - dict_version = {'yolov5s': 0, 'yolov5m': 1, 'yolov5l': 2, 'yolov5x': 3} - network = YOLOV5(is_training=True, version=dict_version[config.yolov5_version]) - # default is kaiming-normal - default_recurisive_init(network) - load_yolov5_params(config, network) - network = YoloWithLossCell(network) - - ds = create_yolo_dataset(image_dir=config.data_root, anno_path=config.annFile, is_training=True, - batch_size=config.per_batch_size, device_num=config.group_size, - rank=config.rank, config=config) - config.logger.info('Finish loading dataset') - - steps_per_epoch = ds.get_dataset_size() - lr = get_lr(config, steps_per_epoch) - opt = nn.Momentum(params=get_param_groups(network), momentum=config.momentum, learning_rate=ms.Tensor(lr), - weight_decay=config.weight_decay, loss_scale=config.loss_scale) - network = nn.TrainOneStepCell(network, opt, config.loss_scale // 2) - network.set_train() - - data_loader = ds.create_tuple_iterator(do_copy=False) - first_step = True - t_end = time.time() - - for epoch_idx in range(config.max_epoch): - for step_idx, data in enumerate(data_loader): - images = data[0] - input_shape = images.shape[2:4] - input_shape = ms.Tensor(tuple(input_shape[::-1]), ms.float32) - loss = network(images, data[2], data[3], data[4], data[5], data[6], - data[7], input_shape) - loss_meter.update(loss.asnumpy()) - - # it is used for loss, performance output per config.log_interval steps. - if (epoch_idx * steps_per_epoch + step_idx) % config.log_interval == 0: - time_used = time.time() - t_end - if first_step: - fps = config.per_batch_size * config.group_size / time_used - per_step_time = time_used * 1000 - first_step = False - else: - fps = config.per_batch_size * config.log_interval * config.group_size / time_used - per_step_time = time_used / config.log_interval * 1000 - config.logger.info('epoch[{}], iter[{}], {}, fps:{:.2f} imgs/sec, ' - 'lr:{}, per step time: {}ms'.format(epoch_idx + 1, step_idx + 1, - loss_meter, fps, lr[step_idx], per_step_time)) - t_end = time.time() - loss_meter.reset() - if config.rank == 0: - ckpt_name = os.path.join(config.output_dir, "yolov5_{}_{}.ckpt".format(epoch_idx + 1, steps_per_epoch)) - ms.save_checkpoint(network, ckpt_name) - - config.logger.info('==========end training===============') - - -if __name__ == "__main__": - run_train() diff --git a/yolov5_distince.py b/yolov5_distince.py new file mode 100644 index 0000000..24bbce5 --- /dev/null +++ b/yolov5_distince.py @@ -0,0 +1,170 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# @Author : linjie +# detection: 基于yolov5社交距离 +import argparse + +from utils.datasets import * +from utils.utils import * + + +def detect(save_img=False): + out, source, weights, view_img, save_txt, imgsz = \ + opt.output, opt.source, opt.weights, opt.view_img, opt.save_txt, opt.img_size + webcam = source == '0' or source.startswith('rtsp') or source.startswith('http') or source.endswith('.txt') + + # Initialize + device = torch_utils.select_device(opt.device) + if os.path.exists(out): + shutil.rmtree(out) # delete output folder + os.makedirs(out) # make new output folder + half = device.type != 'cpu' # half precision only supported on CUDA + + # Load model + google_utils.attempt_download(weights) + model = torch.load(weights, map_location=device)['model'].float() # load to FP32 + # torch.save(torch.load(weights, map_location=device), weights) # update model if SourceChangeWarning + # model.fuse() + model.to(device).eval() + if half: + model.half() # to FP16 + + # Second-stage classifier + classify = False + if classify: + modelc = torch_utils.load_classifier(name='resnet101', n=2) # initialize + modelc.load_state_dict(torch.load('weights/resnet101.pt', map_location=device)['model']) # load weights + modelc.to(device).eval() + + # Set Dataloader + vid_path, vid_writer = None, None + if webcam: + view_img = True + torch.backends.cudnn.benchmark = True # set True to speed up constant image size inference + dataset = LoadStreams(source, img_size=imgsz) + else: + save_img = True + dataset = LoadImages(source, img_size=imgsz) + + # Get names and colors + names = model.names if hasattr(model, 'names') else model.modules.names + colors = [[random.randint(0, 255) for _ in range(3)] for _ in range(len(names))] + + # Run inference + t0 = time.time() + img = torch.zeros((1, 3, imgsz, imgsz), device=device) # init img + _ = model(img.half() if half else img) if device.type != 'cpu' else None # run once + for path, img, im0s, vid_cap in dataset: + img = torch.from_numpy(img).to(device) + img = img.half() if half else img.float() # uint8 to fp16/32 + img /= 255.0 # 0 - 255 to 0.0 - 1.0 + if img.ndimension() == 3: + img = img.unsqueeze(0) + + # Inference + t1 = torch_utils.time_synchronized() + pred = model(img, augment=opt.augment)[0] + + # Apply NMS + pred = non_max_suppression(pred, opt.conf_thres, opt.iou_thres, + fast=True, classes=opt.classes, agnostic=opt.agnostic_nms) + t2 = torch_utils.time_synchronized() + + # Apply Classifier + if classify: + pred = apply_classifier(pred, modelc, img, im0s) + + # List to store bounding coordinates of people + people_coords = [] + + # Process detections + for i, det in enumerate(pred): # detections per image + if webcam: # batch_size >= 1 + p, s, im0 = path[i], '%g: ' % i, im0s[i].copy() + else: + p, s, im0 = path, '', im0s + + save_path = str(Path(out) / Path(p).name) + s += '%gx%g ' % img.shape[2:] # print string + gn = torch.tensor(im0.shape)[[1, 0, 1, 0]] # normalization gain whwh + if det is not None and len(det): + # Rescale boxes from img_size to im0 size + det[:, :4] = scale_coords(img.shape[2:], det[:, :4], im0.shape).round() + + # Print results + for c in det[:, -1].unique(): + n = (det[:, -1] == c).sum() # detections per class + s += '%g %ss, ' % (n, names[int(c)]) # add to string + + # Write results + for *xyxy, conf, cls in det: + if save_txt: # Write to file + xywh = (xyxy2xywh(torch.tensor(xyxy).view(1, 4)) / gn).view(-1).tolist() # normalized xywh + with open(save_path[:save_path.rfind('.')] + '.txt', 'a') as file: + file.write(('%g ' * 5 + '\n') % (cls, *xywh)) # label format + + if save_img or view_img: # Add bbox to image + label = '%s %.2f' % (names[int(cls)], conf) + if label is not None: + if (label.split())[0] == 'person': + people_coords.append(xyxy) + # plot_one_box(xyxy, im0, line_thickness=3) + plot_dots_on_people(xyxy, im0) + + # Plot lines connecting people + distancing(people_coords, im0, dist_thres_lim=(200,250)) + + # Print time (inference + NMS) + print('%sDone. (%.3fs)' % (s, t2 - t1)) + + # Stream results + if view_img: + cv2.imshow(p, im0) + if cv2.waitKey(1) == ord('q'): # q to quit + raise StopIteration + + # Save results (image with detections) + if save_img: + if dataset.mode == 'images': + cv2.imwrite(save_path, im0) + else: + if vid_path != save_path: # new video + vid_path = save_path + if isinstance(vid_writer, cv2.VideoWriter): + vid_writer.release() # release previous video writer + + fps = vid_cap.get(cv2.CAP_PROP_FPS) + w = int(vid_cap.get(cv2.CAP_PROP_FRAME_WIDTH)) + h = int(vid_cap.get(cv2.CAP_PROP_FRAME_HEIGHT)) + vid_writer = cv2.VideoWriter(save_path, cv2.VideoWriter_fourcc(*opt.fourcc), fps, (w, h)) + vid_writer.write(im0) + + if save_txt or save_img: + print('Results saved to %s' % os.getcwd() + os.sep + out) + if platform == 'darwin': # MacOS + os.system('open ' + save_path) + + print('Done. (%.3fs)' % (time.time() - t0)) + + +if __name__ == '__main__': + parser = argparse.ArgumentParser() + parser.add_argument('--weights', type=str, default='weights/yolov5s.pt', help='model.pt path') + parser.add_argument('--source', type=str, default='inference/images', help='source') # file/folder, 0 for webcam + parser.add_argument('--output', type=str, default='inference/output', help='output folder') # output folder + parser.add_argument('--img-size', type=int, default=640, help='inference size (pixels)') + parser.add_argument('--conf-thres', type=float, default=0.4, help='object confidence threshold') + parser.add_argument('--iou-thres', type=float, default=0.5, help='IOU threshold for NMS') + parser.add_argument('--fourcc', type=str, default='mp4v', help='output video codec (verify ffmpeg support)') + parser.add_argument('--device', default='', help='cuda device, i.e. 0 or 0,1,2,3 or cpu') + parser.add_argument('--view-img', action='store_true', help='display results') + parser.add_argument('--save-txt', action='store_true', help='save results to *.txt') + parser.add_argument('--classes', nargs='+', type=int, help='filter by class') + parser.add_argument('--agnostic-nms', action='store_true', help='class-agnostic NMS') + parser.add_argument('--augment', action='store_true', help='augmented inference') + opt = parser.parse_args() + opt.img_size = check_img_size(opt.img_size) + print(opt) + + with torch.no_grad(): + detect() \ No newline at end of file diff --git a/yolov5_flask.py b/yolov5_flask.py new file mode 100644 index 0000000..009f407 --- /dev/null +++ b/yolov5_flask.py @@ -0,0 +1,111 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# @Author : linjie +# detection: 基于yolov5+flask 网页端实现 +import os +import cv2 +from base_camera import BaseCamera +from models.experimental import attempt_load +import torch +import torch.nn as nn +import torchvision +import numpy as np +import argparse +from utils.datasets import * +from utils.utils import * + + +class Camera(BaseCamera): + video_source = 'people.mp4' + + def __init__(self): + if os.environ.get('OPENCV_CAMERA_SOURCE'): + Camera.set_video_source(int(os.environ['OPENCV_CAMERA_SOURCE'])) + super(Camera, self).__init__() + + @staticmethod + def set_video_source(source): + Camera.video_source = source + + @staticmethod + def frames(): + out, weights, imgsz = \ + 'inference/output', 'weights/yolov5s.pt', 640 + source = 'people.mp4' + device = torch_utils.select_device() + if os.path.exists(out): + shutil.rmtree(out) # delete output folder + os.makedirs(out) # make new output folder + + # Load model + model = attempt_load(weights, map_location=device) # load FP32 model + model.to(device).eval() + + # Second-stage classifier + classify = False + if classify: + modelc = torch_utils.load_classifier(name='resnet101', n=2) # initialize + modelc.load_state_dict(torch.load('weights/resnet101.pt', map_location=device)['model']) # load weights + modelc.to(device).eval() + + # Half precision + half = False and device.type != 'cpu' + print('half = ' + str(half)) + + if half: + model.half() + + # Set Dataloader + vid_path, vid_writer = None, None + dataset = LoadImages(source, img_size=imgsz) + # dataset = LoadStreams(source, img_size=imgsz) + names = model.names if hasattr(model, 'names') else model.modules.names + colors = [[random.randint(0, 255) for _ in range(3)] for _ in range(len(names))] + + # Run inference + t0 = time.time() + img = torch.zeros((1, 3, imgsz, imgsz), device=device) # init img + _ = model(img.half() if half else img) if device.type != 'cpu' else None # run once + for path, img, im0s, vid_cap in dataset: + img = torch.from_numpy(img).to(device) + img = img.half() if half else img.float() # uint8 to fp16/32 + img /= 255.0 # 0 - 255 to 0.0 - 1.0 + if img.ndimension() == 3: + img = img.unsqueeze(0) + + # Inference + t1 = torch_utils.time_synchronized() + pred = model(img, augment=False)[0] + + # Apply NMS + pred = non_max_suppression(pred, 0.4, 0.5, + fast=True, classes=None, agnostic=False) + t2 = torch_utils.time_synchronized() + + # Apply Classifier + if classify: + pred = apply_classifier(pred, modelc, img, im0s) + + + + for i, det in enumerate(pred): # detections per image + p, s, im0 = path, '', im0s + + save_path = str(Path(out) / Path(p).name) + s += '%gx%g ' % img.shape[2:] # print string + gn = torch.tensor(im0.shape)[[1, 0, 1, 0]] # normalization gain whwh + if det is not None and len(det): + # Rescale boxes from img_size to im0 size + det[:, :4] = scale_coords(img.shape[2:], det[:, :4], im0.shape).round() + + # for c in det[:, -1].unique(): #probably error with torch 1.5 + for c in det[:, -1].detach().unique(): + n = (det[:, -1] == c).sum() # detections per class + s += '%g %s, ' % (n, names[int(c)]) # add to string + + for *xyxy, conf, cls in det: + label = '%s %.2f' % (names[int(cls)], conf) + plot_one_box(xyxy, im0, label=label, color=colors[int(cls)], line_thickness=3) + print('%sDone. (%.3fs)' % (s, t2 - t1)) + + yield cv2.imencode('.jpg', im0)[1].tobytes() \ No newline at end of file diff --git a/yolov5_flask_distince.py b/yolov5_flask_distince.py new file mode 100644 index 0000000..2edd609 --- /dev/null +++ b/yolov5_flask_distince.py @@ -0,0 +1,118 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# @Author : linjie +# detection: 基于yolov5+flask+社交距离 网页端实现 +import os +import cv2 +from base_camera import BaseCamera +from models.experimental import attempt_load +import torch +import torch.nn as nn +import torchvision +import numpy as np +import argparse +from utils.datasets import * +from utils.utils import * + + +class Camera(BaseCamera): + video_source = 'p.mp4' + + def __init__(self): + if os.environ.get('OPENCV_CAMERA_SOURCE'): + Camera.set_video_source(int(os.environ['OPENCV_CAMERA_SOURCE'])) + super(Camera, self).__init__() + + @staticmethod + def set_video_source(source): + Camera.video_source = source + + @staticmethod + def frames(): + out, weights, imgsz = \ + 'inference/output', 'weights/yolov5s.pt', 640 + source = 'p.mp4' + device = torch_utils.select_device() + if os.path.exists(out): + shutil.rmtree(out) # delete output folder + os.makedirs(out) # make new output folder + + # Load model + model = attempt_load(weights, map_location=device) # load FP32 model + model.to(device).eval() + + # Second-stage classifier + classify = False + if classify: + modelc = torch_utils.load_classifier(name='resnet101', n=2) # initialize + modelc.load_state_dict(torch.load('weights/resnet101.pt', map_location=device)['model']) # load weights + modelc.to(device).eval() + + # Half precision + half = False and device.type != 'cpu' + print('half = ' + str(half)) + + if half: + model.half() + + # Set Dataloader + vid_path, vid_writer = None, None + dataset = LoadImages(source, img_size=imgsz) + # dataset = LoadStreams(source, img_size=imgsz) + names = model.names if hasattr(model, 'names') else model.modules.names + colors = [[random.randint(0, 255) for _ in range(3)] for _ in range(len(names))] + + # Run inference + t0 = time.time() + img = torch.zeros((1, 3, imgsz, imgsz), device=device) # init img + _ = model(img.half() if half else img) if device.type != 'cpu' else None # run once + for path, img, im0s, vid_cap in dataset: + img = torch.from_numpy(img).to(device) + img = img.half() if half else img.float() # uint8 to fp16/32 + img /= 255.0 # 0 - 255 to 0.0 - 1.0 + if img.ndimension() == 3: + img = img.unsqueeze(0) + + # Inference + t1 = torch_utils.time_synchronized() + pred = model(img, augment=False)[0] + + # Apply NMS + pred = non_max_suppression(pred, 0.4, 0.5, + fast=True, classes=None, agnostic=False) + t2 = torch_utils.time_synchronized() + + # Apply Classifier + if classify: + pred = apply_classifier(pred, modelc, img, im0s) + + # List to store bounding coordinates of people + people_coords = [] + + for i, det in enumerate(pred): # detections per image + p, s, im0 = path, '', im0s + + save_path = str(Path(out) / Path(p).name) + s += '%gx%g ' % img.shape[2:] # print string + gn = torch.tensor(im0.shape)[[1, 0, 1, 0]] # normalization gain whwh + if det is not None and len(det): + # Rescale boxes from img_size to im0 size + det[:, :4] = scale_coords(img.shape[2:], det[:, :4], im0.shape).round() + + # for c in det[:, -1].unique(): #probably error with torch 1.5 + for c in det[:, -1].detach().unique(): + n = (det[:, -1] == c).sum() # detections per class + s += '%g %s, ' % (n, names[int(c)]) # add to string + + for *xyxy, conf, cls in det: + label = '%s %.2f' % (names[int(cls)], conf) + if label is not None: + if (label.split())[0] == 'person': + people_coords.append(xyxy) + # plot_one_box(xyxy, im0, line_thickness=3) + plot_dots_on_people(xyxy, im0) + # Plot lines connecting people + distancing(people_coords, im0, dist_thres_lim=(200, 250)) + print('%sDone. (%.3fs)' % (s, t2 - t1)) + + yield cv2.imencode('.jpg', im0)[1].tobytes() \ No newline at end of file diff --git a/yolov5s.pt b/yolov5s.pt new file mode 100644 index 0000000..99e93f4 Binary files /dev/null and b/yolov5s.pt differ