Skip to content

Commit

Permalink
fix bug
Browse files Browse the repository at this point in the history
  • Loading branch information
we0091234 committed Mar 6, 2023
1 parent 8886a92 commit 8f8e90a
Show file tree
Hide file tree
Showing 8 changed files with 15 additions and 93 deletions.
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ python detect_plate.py --detect_model weights/plate_detect.pt --rec_model weigh
#### 视频测试demo [2.MP4](https://pan.baidu.com/s/1O1sT8hCEwJZmVScDwBHgOg) 提取码:41aq

```
python detect_plate.py --detect_model weights/plate_detect.pt --rec_model weights/plate_rec.pth --video 2.mp4
python detect_plate.py --detect_model weights/plate_detect.pt --rec_model weights/plate_rec_color.pth --video 2.mp4
```

视频文件为2.mp4 保存为result.mp4
Expand Down Expand Up @@ -83,10 +83,10 @@ python detect_plate.py --detect_model weights/plate_detect.pt --rec_model weigh
- [X] 5.教练车牌
- [X] 6.武警车牌
- [X] 7.双层黄牌
- [X] 8.双层武警
- [X] 8.双层白牌
- [X] 9.使馆车牌
- [X] 10.港澳粤Z牌
- [X] 11.双层农用车牌
- [X] 11.双层绿牌
- [X] 12.民航车牌


Expand Down
16 changes: 5 additions & 11 deletions detect_plate.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@
from plate_recognition.plate_rec import get_plate_result,allFilePath,init_model,cv_imread
# from plate_recognition.plate_cls import cv_imread
from plate_recognition.double_plate_split_merge import get_split_merge
from plate_recognition.color_rec import plate_color_rec,init_color_model

clors = [(255,0,0),(0,255,0),(0,0,255),(255,255,0),(0,255,255)]
danger=['危','险']
Expand All @@ -35,7 +34,8 @@ def order_points(pts): #四个点按照左上 右上 右下


def four_point_transform(image, pts): #透视变换得到车牌小图
rect = order_points(pts)
# rect = order_points(pts)
rect = pts.astype('float32')
(tl, tr, br, bl) = rect
widthA = np.sqrt(((br[0] - bl[0]) ** 2) + ((br[1] - bl[1]) ** 2))
widthB = np.sqrt(((tr[0] - tl[0]) ** 2) + ((tr[1] - tl[1]) ** 2))
Expand Down Expand Up @@ -107,9 +107,6 @@ def get_plate_rec_landmark(img, xyxy, conf, landmarks, class_num,device,plate_re
plate_number,rec_prob = get_plate_result(roi_img,device,plate_rec_model,is_color=is_color) #对车牌小图进行识别
else:
plate_number,rec_prob,plate_color,color_conf=get_plate_result(roi_img,device,plate_rec_model,is_color=is_color)
for dan in danger: #只要出现‘危’或者‘险’就是危险品车牌
if dan in plate_number:
plate_number='危险品'
# cv2.imwrite("roi.jpg",roi_img)
result_dict['rect']=rect #车牌roi区域
result_dict['detect_conf']=conf #检测区域得分
Expand Down Expand Up @@ -217,10 +214,7 @@ def draw_result(orgimg,dict_list,is_color=False): # 车牌结果画出来
cv2.circle(orgimg, (int(landmarks[i][0]), int(landmarks[i][1])), 5, clors[i], -1)
cv2.rectangle(orgimg,(rect_area[0],rect_area[1]),(rect_area[2],rect_area[3]),(0,0,255),2) #画框
if len(result)>=1:
if "危险品" in result_p: #如果是危险品车牌,文字就画在下面
orgimg=cv2ImgAddText(orgimg,result_p,rect_area[0],rect_area[3],(0,255,0),height_area)
else:
orgimg=cv2ImgAddText(orgimg,result_p,rect_area[0]-height_area,rect_area[1]-height_area-10,(0,255,0),height_area)
orgimg=cv2ImgAddText(orgimg,result_p,rect_area[0]-height_area,rect_area[1]-height_area-10,(0,255,0),height_area)

print(result_str)
return orgimg
Expand All @@ -237,10 +231,10 @@ def get_second(capture):

if __name__ == '__main__':
parser = argparse.ArgumentParser()
parser.add_argument('--detect_model', nargs='+', type=str, default='weights/plate_detect.pt', help='model.pt path(s)') #检测模型
parser.add_argument('--detect_model', nargs='+', type=str, default='runs/train/exp40/weights/best.pt', help='model.pt path(s)') #检测模型
parser.add_argument('--rec_model', type=str, default='weights/plate_rec_color.pth', help='model.pt path(s)')#车牌识别+颜色识别模型
parser.add_argument('--is_color',type=bool,default=True,help='plate color') #是否识别颜色
parser.add_argument('--image_path', type=str, default='imgs', help='source')
parser.add_argument('--image_path', type=str, default='gangao/Test', help='source')
parser.add_argument('--img_size', type=int, default=640, help='inference size (pixels)')
parser.add_argument('--output', type=str, default='result1', help='source')
parser.add_argument('--video', type=str, default='', help='source')
Expand Down
74 changes: 0 additions & 74 deletions plate_recognition/color_rec.py

This file was deleted.

6 changes: 3 additions & 3 deletions processing_json.py
Original file line number Diff line number Diff line change
Expand Up @@ -70,9 +70,9 @@ def four_point_transform(image, pts):

if __name__ == "__main__":
pic_file_list = []
pic_file = r"test"
pic_file = r"/mnt/Gpan/Mydata/pytorchPorject/datasets/ccpd/train_bisai/train_bisai"
save_small_path = "small"
label_file = ['single','double']
label_file = ['0','1']
allFilePath(pic_file,pic_file_list)
count=0
index = 0
Expand All @@ -96,7 +96,7 @@ def four_point_transform(image, pts):
label=data_message['label']
points = data_message['points']
pts = np.array(points)
pts=order_points(pts)
# pts=order_points(pts)
new_img = four_point_transform(img,pts)
roi_img_name = label+"_"+str(index)+".jpg"
save_path=os.path.join(save_small_path,roi_img_name)
Expand Down
4 changes: 2 additions & 2 deletions train.py
Original file line number Diff line number Diff line change
Expand Up @@ -473,8 +473,8 @@ def train(hyp, opt, device, tb_writer=None, wandb=None):
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()
# if opt.global_rank in [-1, 0]:
# check_git_status()

# Resume
if opt.resume: # resume an interrupted run
Expand Down
Binary file modified utils/__pycache__/face_datasets.cpython-38.pyc
Binary file not shown.
2 changes: 2 additions & 0 deletions utils/face_datasets.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,8 @@ def img2label_paths(img_paths):
sa, sb = os.sep + 'images' + os.sep, os.sep + 'labels' + os.sep # /images/, /labels/ substrings
return [x.replace(sa, sb, 1).replace('.' + x.split('.')[-1], '.txt') for x in img_paths]

# return [x.replace(".jpg",".txt") for x in img_paths]

def exif_size(img):
# Returns exif-corrected PIL size
s = img.size # (width, height)
Expand Down
Binary file removed weights/color_classify.pth
Binary file not shown.

0 comments on commit 8f8e90a

Please sign in to comment.