kr-plate-detector β νκ΅ μ°¨λ λ²νΈν κ²μΆ (RTMDet-tiny)
νκ΅ μ°¨λ λ²νΈνμ κ²μΆνλ κ²½λ λͺ¨λΈ. 100% ν©μ± λ°μ΄ν°λ‘λ§ νμ΅νμΌλ©°, μ€μ νκ΅ λ²νΈν(AI Hub κ²μ¦μ )μμ μ±λ₯μ μΈ‘μ νμ΅λλ€. νλΌμ΄λ²μ λΈλ¬ λꡬμ©μΌλ‘ κ°λ°.
- μν€ν μ²: RTMDet-tiny (mmdetection), 1ν΄λμ€(number plate)
- μ λ ₯: 960Γ960, μΆλ ₯: 3-μ€μΌμΌ cls/bbox
- λΌμ΄μ μ€: Apache-2.0 β μμ μ μ¬μ© κ°λ₯
- λΌμ΄λΈ λ°λͺ¨: https://huggingface.co/spaces/miraclenote78/privacy-blur
μ±λ₯
| νκ° | μ§ν | κ° |
|---|---|---|
| ν©μ± κ²μ¦μ (300μ₯) | mAP50 / mAP50-95 | 0.949 / 0.806 |
| μ€μ¬ νκ΅ λ²νΈν (AI Hub, 1,000μ₯) | κ²μΆλ₯ (conf 0.25) | 88.8% |
| γ | κ²μΆλ₯ (conf 0.40) | 83.8% |
μ€μ¬ κ²μ¦μ AI Hub "μλμ°¨ μ°¨μ’ /μ°μ/λ²νΈν μΈμμ© μμ"μ λ²νΈν μ΄λ―Έμ§λ‘ μΈ‘μ λ§ μν(νμ΅μ λ―Έμ¬μ©). ν©μ±λ§μΌλ‘ νμ΅ν λͺ¨λΈμ΄ μ€μ λ²νΈνμ μΌλ°νλ¨μ νμΈ.
μ¬μ©λ²
ONNX Runtime (κΆμ₯ β PyTorch/mmdet λΆνμ)
from huggingface_hub import hf_hub_download
import cv2, numpy as np, onnxruntime as ort
onnx_path = hf_hub_download("miraclenote78/kr-plate-detector", "plate_kr_rtmdet_v4.onnx")
# μ μ²λ¦¬Β·νμ²λ¦¬λ rtmdet_onnx.py μ°Έκ³ (λλ΄)
rt = hf_hub_download("miraclenote78/kr-plate-detector", "rtmdet_onnx.py")
import importlib.util
spec = importlib.util.spec_from_file_location("rtmdet_onnx", rt)
m = importlib.util.module_from_spec(spec); spec.loader.exec_module(m)
det = m.OnnxPlateDetector(onnx_path, conf_large=0.4, conf_tiny=0.4, tiny_frac=0.0)
img = cv2.imread("car.jpg")
for x1, y1, x2, y2, score in det.detect(img):
cv2.rectangle(img, (int(x1), int(y1)), (int(x2), int(y2)), (0, 255, 0), 2)
cv2.imwrite("out.jpg", img)
μ μ²λ¦¬: BGR keep-ratio 960 ν¨λ© + mean/std μ κ·ν Β· νμ²λ¦¬: sigmoid β distance λμ½λ β NMS. ν¬κΈ° μ‘°κ±΄λΆ λ¬Έν± + κ°λ‘μΈλ‘λΉ νν°λ‘ μ€κ²μΆ μ΅μ .
νμ΅ λ°©λ² (μμ½)
νκ΅ λ²νΈνμ κ·κ²©Β·μμ²΄κ° νμ€νλΌ μμ΄ νλ‘κ·Έλ¨μΌλ‘ ν©μ± μμ± κ°λ₯: μ ν ν°νΒ·μμ μ© λ ΈλνΒ·μ κΈ°μ°¨ νλν·ꡬν λ Ήμνμ κ·μΉλλ‘ λ λλ§ β λ°°κ²½μ μκ·Ό ν©μ± β μΌκ°/λͺ¨μ λΈλ¬/λ Έμ΄μ¦/JPEG μ¦κ° β YOLO λΌλ²¨ μλ μμ±. COCO μ¬μ νμ΅ RTMDet-tinyμμ νμΈνλ. (μμ±κΈ°Β·νμ΅ μ½λλ λΉκ³΅κ°)
μλ €μ§ νκ³
- μ€μ¬ κ²μ¦μ λ²νΈνμ΄ ν¬κ² 보μ΄λ ν¬λ‘ μ΄λ―Έμ§ κΈ°μ€. λ¬λ¦¬λ μ°¨μ μ거리 μν λ²νΈν(λμμΊ μκ²½)μ λ³λ κ²μ¦ νμ β μ±λ₯μ΄ λ€λ₯Ό μ μμ
- ꡬν μ§μλͺ μΈλ‘μ°κΈ° μμ μ©ν, κ·Ήλ¨μ κ°λλ μ½ν¨
- νλΌμ΄λ²μ μ©λ μ μμ μ±μ 보μ₯νμ§ μμ β μ΅μ’ κ²μλ μ¬μ©μ μ± μ
μΆμ²
νλΌμ΄λ²μ λΈλ¬ νμ΄νλΌμΈμ©μΌλ‘ κ°λ°. λ°λͺ¨: privacy-blur Space.