PavelLekomtsev commited on
Commit
a8b9280
·
verified ·
1 Parent(s): 1d5bc4c

Overall update app.py

Browse files
Files changed (1) hide show
  1. app.py +7 -4
app.py CHANGED
@@ -64,6 +64,7 @@ class App:
64
 
65
  p = App()
66
 
 
67
 
68
  def detect_license_plates(model, image):
69
  plate_image_np = pil_to_np(image)
@@ -120,7 +121,7 @@ def process_image(image_path: Image):
120
  ax.imshow(image_np)
121
 
122
  plates = detect_license_plates(license_plate_detector, image_path)
123
- recognized_text = ""
124
 
125
  for i, (plate, bbox) in enumerate(plates):
126
  preprocessed_plate = preprocess_license_plate(plate)
@@ -133,6 +134,8 @@ def process_image(image_path: Image):
133
  recognized_text = recognized_text.replace('7', 'T', 1) if recognized_text[0] == "7" else recognized_text
134
  recognized_text = recognized_text.replace('0', 'O', 1) if recognized_text[0] == "0" else recognized_text
135
  recognized_text = recognized_text[:9] if len(recognized_text) >= 9 else recognized_text
 
 
136
 
137
  x1, y1, x2, y2 = bbox
138
  rect = patches.Rectangle((x1, y1), x2 - x1, y2 - y1, linewidth=2, edgecolor='r', facecolor='none')
@@ -146,7 +149,7 @@ def process_image(image_path: Image):
146
  plt.savefig(output_buffer, bbox_inches='tight')
147
  plt.close()
148
 
149
- return Image.open(output_buffer), recognized_text.strip()
150
 
151
 
152
  # Gradio UI
@@ -161,7 +164,7 @@ interface = gr.Interface(
161
  inputs=gr.Image(type="pil", label="Загрузите фото машины с номером 📤"),
162
  outputs=[
163
  gr.Image(type="pil", label="📸 Выход 0 - Обработанное изображение"),
164
- gr.Text(label="🔍 Выход 1 - Распознанный номер"),
165
  ],
166
  title="Распознавание российских номеров",
167
  description="🔎 **Загрузите изображение с автомобильным номером** и модель автоматически **определит госномер!** 🔥\n\n📸 **Форматы:** JPG, PNG, BMP",
@@ -171,4 +174,4 @@ interface = gr.Interface(
171
  )
172
 
173
  if __name__ == "__main__":
174
- interface.launch(share=True)
 
64
 
65
  p = App()
66
 
67
+ black_list = ["Y985BE152"]
68
 
69
  def detect_license_plates(model, image):
70
  plate_image_np = pil_to_np(image)
 
121
  ax.imshow(image_np)
122
 
123
  plates = detect_license_plates(license_plate_detector, image_path)
124
+ recognized_texts = []
125
 
126
  for i, (plate, bbox) in enumerate(plates):
127
  preprocessed_plate = preprocess_license_plate(plate)
 
134
  recognized_text = recognized_text.replace('7', 'T', 1) if recognized_text[0] == "7" else recognized_text
135
  recognized_text = recognized_text.replace('0', 'O', 1) if recognized_text[0] == "0" else recognized_text
136
  recognized_text = recognized_text[:9] if len(recognized_text) >= 9 else recognized_text
137
+ if recognized_text not in black_list:
138
+ recognized_texts.append(recognized_text)
139
 
140
  x1, y1, x2, y2 = bbox
141
  rect = patches.Rectangle((x1, y1), x2 - x1, y2 - y1, linewidth=2, edgecolor='r', facecolor='none')
 
149
  plt.savefig(output_buffer, bbox_inches='tight')
150
  plt.close()
151
 
152
+ return Image.open(output_buffer), recognized_texts
153
 
154
 
155
  # Gradio UI
 
164
  inputs=gr.Image(type="pil", label="Загрузите фото машины с номером 📤"),
165
  outputs=[
166
  gr.Image(type="pil", label="📸 Выход 0 - Обработанное изображение"),
167
+ gr.JSON(label="🔍 Выход 1 - Распознанный номер"),
168
  ],
169
  title="Распознавание российских номеров",
170
  description="🔎 **Загрузите изображение с автомобильным номером** и модель автоматически **определит госномер!** 🔥\n\n📸 **Форматы:** JPG, PNG, BMP",
 
174
  )
175
 
176
  if __name__ == "__main__":
177
+ interface.launch(share=True)