Teknoloji deteksyon objè vizyon òdinatè a esansyèl pou anpil aplikasyon. Nou itilize li nan robotik, ekipman siveyans, otomobil oto-kondwi, ak anpil lòt zòn. Pakonsekan, nou jwenn ak rekonèt sèten bagay nan yon foto oswa videyo.
Youn nan pi koni algoritm idantifikasyon objè se YOLO la (Ou gade sèlman yon fwa) seri modèl. Modèl sa yo kreye pa Ultralytics LLC.
Vèsyon ki pi resan nan seri sa a se YOLOv5. Epi, li se modèl idantifikasyon objè ki pi rapid ak pi presi sou mache a. Kapasite modèl la pou jeneralize nan nouvo done yo te amelyore anpil. Epitou, li gen anpil karakteristik ki fè li fè pi bon pase iterasyon pi bonè.
YOLOv5 se gwo pou aplikasyon an tan reyèl paske li ka trete foto nan yon vitès ki rive jiska 1000 ankadreman pou chak segonn sou yon sèl GPU.
Nan atik sa a, nou pral prezante YOLOv5 epi ale sou detay yo nan zòn aplikasyon li yo.
Vwayaj YOLO: Soti nan YOLO rive nan YOLOv5
Joseph Redmon et al. orijinèlman prezante YOLO a, yon seri modèl idantifikasyon objè, nan 2016. Modèl YOLO inisyal la te kapab idantifye objè an tan reyèl. Sepandan, li te gen yon presizyon ki ba lè yo konpare ak lòt modèl nan moman sa a.
Plizyè vèsyon modènize YOLO yo te lage pandan tout ane yo. Epi finalman, Ultralytics LLC te kreye dernye edisyon seri YOLO, YOLOv5.
YOLOv5 se modèl idantifikasyon objè ki pi egzak ak pi rapid ki disponib kounye a.
Karakteristik ki enpòtan
Bwat Anchor
YOLOv5 predi bwat delimitasyon pou objè nan yon imaj lè l sèvi avèk bwat jete lank. Modèl la predi kilès nan anpil bwat pre-defini ak divès rapò aspè pi byen matche ak atik la nan foto a lè l sèvi avèk bwat jete lank. Sa yo se bwat pre-defini.
Epi, yo pèmèt YOLOv5 rekonèt epi jwenn atik nan yon foto ak presizyon.
Ogmantasyon done mozayik
Lè fòmasyon, YOLOv5 anplwaye yon metòd ke yo rekonèt kòm mozayik ogmantasyon done. Pou devlope foto fòmasyon fre, modèl nou an owaza konbine plak plizyè foto. Kòm yon rezilta, modèl la vin pi fleksib ak serye. Pakonsekan, li vin jeneralize nan nouvo done ak diminye overfitting.
Yon tiyo fòmasyon inik
Yon tiyo fòmasyon inik ki melanje sipèvize ak aprantisaj san sipèvizyon itilize.
Kidonk, modèl la aprann nan yon echantiyon ki pi piti epi li itilize opinyon san etikèt efikasman. Sa a ranfòse pèfòmans modèl la ak amelyore kapasite li pou jeneralize nan nouvo entrées.
Kouch ki rezidyèl ak ki pa rezidyèl
Achitekti YOLOv5 a konbine kouch ki rezidyèl ak ki pa rezidyèl. Lè yo pèmèt gradyan yo koule atravè kouch yo, kouch rezidyèl ede modèl la nan aprann karakteristik difisil. Epitou, kouch ki pa rezidyèl bay modèl la yon konpreyansyon pi konplè sou foto a opinyon. Kòm yon rezilta, YOLOv5 ka opere plis presizyon ak efektivman.
Kouman pou itilize YOLOv5
Enstalasyon
Enstalasyon YOLOv5 ka ranpli byen vit lè l sèvi avèk pip. Pip se yon manadjè pake Python. Pwosedi jeneral yo pou enstale YOLOv5 se jan sa a:
1- Enstale PyTorch: Paske YOLOv5 baze sou kad PyTorch la, ou dwe enstale PyTorch dabò.
pip install torch torchvision
2. Enstale CUDA: Ou dwe enstale CUDA si ou gen entansyon kouri YOLOv5 sou yon GPU.
3. Enstale YOLOv5: Apre mete PyTorch ak CUDA, sèvi ak lòd sa a pou telechaje YOLOv5.
pip install yolov5
4-Apre enstalasyon YOLOv5, ou dwe telechaje pwa ki te antrene davans yo. Pwa yo pre-antrene yo disponib nan Ultralytics GitHub repo a.
Ale nan pati "pwa" nan sit entènèt la pa defile desann. Ou ka telechaje pwa ki antrene davans nan lis ou ka jwenn la a.
5. Chwazi pwa ki deja antrene epi ki pi byen adapte ka itilize w la. Ansanm done oswa vèsyon patikilye YOLOv5 ke pwa yo te aprann yo ka itilize pou etwat lis la.
6- Apre w fin chwazi pwa ki apwopriye yo, chwazi pwa a lè w klike sou bouton "Download" ki akote li. Pwa yo ap disponib pou telechaje kòm. pt fichye yo.
7- Transfere pwa telechaje yo nan anyè a. Sa a se kote script deteksyon ou a pral opere.
8- Nan pwen sa a, ou ka kouri deteksyon objè sou foto ou oswa videyo lè l sèvi avèk pwa yo pre-antre nan script deteksyon ou.
Prepare done yo
Ou dwe pran aksyon sa yo pou prepare done yo pou itilize ak YOLOv5:
1. Rasanble done yo: Premye etap la se rasanble foto oswa done videyo w ap bezwen pou yo deteksyon objè. Bagay ou vle detekte yo ta dwe prezan nan foto yo oswa videyo yo.
2- Fòma done yo: Ou ka jis enpòte foto nan script ou a si w ap itilize yo. Ou dwe vire yon videyo nan yon seri foto si w gen plan pou itilize youn. Ou ka ekstrè ankadreman yo nan yon fim lè l sèvi avèk yon bibliyotèk tankou OpenCV.
import cv2
img = cv2.imread('path/to/image')
Avèk bibliyotèk OpenCV, ou ka itilize kòmandman sa a pou fè yon videyo tounen yon seri imaj:
import cv2
cap = cv2.VideoCapture('path/to/video')
while True:
ret, frame = cap.read()
if not ret:
break
cv2.imshow('frame', frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
3. Mete etikèt sou done yo: Ou dwe make done yo si w ap itilize done ou a. Desen bwat delimitasyon alantou atik ou vle idantifye yo nan chak ankadreman nan yon imaj. Li se pwosesis pou make done yo. Ou ka itilize plizyè zouti pou ede w ak operasyon sa a, tankou LabelImg ak RectLabel.
4- Ou dwe divize done yo an seri fòmasyon ak tès apre ou fin tagged li. Sa enpòtan anpil pou evalye kouman modèl ou a ap fè.
5. Finalman, ou ta ka bezwen preprocess done yo anvan fòmasyon oswa tès. Sa a ka enplike dekale foto yo oswa videyo, estandadize valè pixel yo, oswa itilize metòd pou ogmante done yo.
Apre w fin ranpli etap sa yo, done ou yo pare.
Kouri script deteksyon an
Isit la se yon ilistrasyon yon script deteksyon ki analize yon foto epi jwenn objè.
import yolov5
import cv2
# Pre-trained weights should be loaded.
weights = 'path/to/weights.pt'
# Set the detection confidence level
conf_thres = 0.5
# Set the Non-Maxima Suppression (NMS) threshold
nms_thres = 0.5
# Create the detector object
detector = yolov5.YOLOv5(weights, conf_thres, nms_thres)
# Load the image
img = cv2.imread('path/to/image')
# Perform object detection
detections = detector.detect(img)
# Print the detections
for x1, y1, x2, y2, conf, cls_conf, cls_pred in detections:
print("Object:", classes[int(cls_pred)])
print("Confidence:", conf)
print("Bounding box:", (x1, y1, x2, y2))
Post-pwosesis
Repwesyon ki pa maksimòm se youn nan teknik apre-pwosesis ki pi souvan itilize nan deteksyon objè (NMS). Nou itilize NMS pou elimine bwat limit ki sipèpoze pou menm objè a. Pou egzekite NMS sou deteksyon yo, nou ka itilize metòd cv2.dnn.NMSBoxes() bibliyotèk OpenCV la.
Men yon egzanp sou fason pou post-pwosesis deteksyon lè l sèvi avèk NMS.
import cv2
# Perform Non-Maxima Suppression (NMS)
endis = cv2.dnn.NMSBoxes (deteksyon, konfidans, conf_thres, nms_thres)
Vizualizasyon
Nan ka vizyalizasyon, nou ka ankò itilize yon bibliyotèk tankou OpenCV. Nou ka montre bwat limit yo alantou objè yo dekouvri sou foto oswa videyo sous la. Pou trase bwat delimitasyon imaj la, sèvi ak metòd la cv2.rectangle(). Men ki jan yo wè deteksyon yo sou imaj orijinal la:
enpòte cv2
# Draw the bounding boxes on the image
pou mwen nan endis:
i = i[0]
x1, y1, x2, y2 = detections[i][0], detections[i][1], detections[i][2], detections[i][3]
cv2.rectangle(img, (x1, y1), (x2, y2), (255, 0, 0), 2)
cv2.putText(img, classes[class_ids[i]], (x1, y1), cv2.FONT_HERSHEY_SIMPLEX, 1, (255, 255, 255), 2)
# Show the image
cv2.imshow("Object Detection", img)
cv2
Aplikasyon
YOLOv5 se yon modèl idantifikasyon objè fò. Pakonsekan, nou ka sèvi ak li nan anpil senaryo reyèl. Youn nan itilizasyon ki pi enpòtan se nan machin oto-kondwi. YOLOv5 ka idantifye atik an tan reyèl tankou otomobil ak limyè trafik yo.
Nan sistèm siveyans, nou ka itilize YOLOv5 pou rekonèt ak swiv objè nan kouran videyo ap viv la. Anplis de sa, YOLOv5 kapab yon gwo avantaj nan robotics. Li ka ede robo detekte ak konprann anviwònman yo. Sa a trè enpòtan pou aktivite tankou navigasyon ak manipilasyon.
Yo ka itilize YOLOv5 tou nan nenpòt endistri ki mande pou deteksyon objè, tankou Vann an Detay, espò, medikal, ak sekirite.
konklizyon
Finalman, YOLOv5 se vèsyon ki pi resan ak sofistike nan fanmi YOLO deteksyon objè modèl
. Epitou, li jis yo di ke li se modèl la deteksyon objè ki pi egzak ki disponib. Mèsi a presizyon segondè li yo ak vitès, ou ka san danje chwazi li pou pwojè deteksyon objè ou yo.
Resky Agus
Mwen fè yon premye jounal sou machin deteksyon ak yolov5 ak sit entènèt sa a ede m chèche enfòmasyon sou sa.
Mwen trè enterese sou AI.
si ou kapab mwen gen anpil kesyon sou AI petèt ou ka ede mwen
Mèsi