Tekinoroji yekuona komputa yekuona chinhu yakakosha kune akawanda maapplication. Isu tinoishandisa mumarobhoti, midziyo yekutarisa, mota dzinozvityaira, uye dzimwe nzvimbo dzakawanda. Nekudaro, isu tinosvika pakuwana nekuziva zvimwe zvinhu mumufananidzo kana vhidhiyo.
Imwe yevanonyanya kuzivikanwa chinhu chiziviso algorithms ndiyo YOLO (Iwe Unongotarisa Kamwechete) seti yemamodheru. Aya mamodheru anogadzirwa ne Ultralytics LLC.
Iyo yazvino vhezheni yeiyi nhevedzano ndeye YOLOv5. Uye, ndiyo inokurumidza uye yakanyatsorongeka yekuzivikanwa kwechinhu pamusika. Kugona kweiyo modhi kugadzirisa kune nyowani data kwakagadziridzwa zvakanyanya. Zvakare, ine akawanda maficha anoita kuti iite zvirinani pane yekutanga iterations.
YOLOv5 yakanakira maapplications enguva-chaiyo sezvo ichikwanisa kugadzira mapikicha pamwero unosvika zana mafuremu pasekondi imwe chete paGPU.
Muchinyorwa chino, tichazivisa YOLOv5 uye toenda pamusoro pezvinhu zvenzvimbo dzayo dzekushandisa.
Rwendo rweYOLO: Kubva kuYOLO kuenda kuYOLOv5
Joseph Redmon et al. yakatanga yakaunza YOLO, seti yemamodheru ekuzivikanwa kwechinhu, muna 2016. Yekutanga YOLO modhi yaigona kuziva zvinhu munguva chaiyo. Nekudaro, yaive neiyo yakaderera yechokwadi kana ichienzaniswa nemamwe mamodheru panguva iyoyo.
Dzakati wandei dzakakwidziridzwa dzeYOLO dzakaburitswa mumakore ese. Uye pakupedzisira, Ultralytics LLC yakagadzira iyo itsva edition yeYOLO akatevedzana, YOLOv5.
YOLOv5 ndiyo yakanyatsojeka uye inokurumidza yekuzivisa chinhu modhi iripo parizvino.
Zvinhu Zvinokosha
Anchor Mabhokisi
YOLOv5 inofanotaura mabhokisi ekusungira ezvinhu zviri mumufananidzo uchishandisa mabhokisi eanchor. Iyo modhi inofanotaura kuti nderipi pamabhokisi mazhinji afanotsanangurwa ane akasiyana siyana mareshiyo anonyatsoenderana nechinhu chiri pamufananidzo uchishandisa mabhokisi eanchor. Aya ndiwo mabhokisi akafanotsanangurwa.
Uye, ivo vanogonesa YOLOv5 kuziva uye kuwana zvinhu mumufananidzo nemazvo.
Mosaic data kuwedzera
Paunenge uchidzidzira, YOLOv5 inoshandisa nzira inozivikanwa semosaic kuwedzera data. Kugadzira mifananidzo mitsva yekudzidzisa, modhi yedu inosanganisa inosanganisa zvigamba zvemifananidzo yakati wandei. Nekuda kweizvozvo, iyo modhi inova yakanyanya kusimba uye yakavimbika. Nekudaro, inosvika pakuumba kune data nyowani uye kuderedza kuwandisa.
Iyo Yakasiyana Yekudzidzisa Pipeline
Iyo yakasarudzika pombi yekudzidzisa inosanganisa inotariswa uye kudzidza kusingatarisirwe inoshandiswa.
Nekudaro, iyo modhi inodzidza kubva kudiki sampuli uye inoshandisa isina kunyorwa zvinobudirira. Izvi zvinowedzera kuita kweiyo modhi uye inosimudzira kugona kwayo kugadzirisa kune zvitsva zvinongedzo.
Ma layers anosara uye asina kusara
YOLOv5's architecture inosanganisa ma layers asara uye asiri asara. Nekubvumidza magradients kuti ayerera achipfuura nemateru, masarairi akasara anobatsira modhi mukudzidza zvinhu zvakaoma. Zvakare, asiri-asara akaturikidzana anopa iyo modhi nekunzwisisa kwakanyanya kweiyo yekupinda mufananidzo. Nekuda kweizvozvo, YOLOv5 inogona kushanda nemazvo uye nemazvo.
Mashandisiro eYOLOv5
kugadzwa
YOLOv5 kuisirwa kunogona kupedzwa nekukurumidza uchishandisa pip. Pip ndeye Python package maneja. Maitiro ekuisa YOLOv5 ndeaya anotevera:
1- Isa PyTorch: Nekuti YOLOv5 yakavakirwa paPyTorch chimiro, unofanira kutanga waisa PyTorch.
pip install torch torchvision
2. Isa CUDA: Unofanira kuisa CUDA kana uchida kumhanya YOLOv5 paGPU.
3. Isa YOLOv5: Mushure mekugadzirisa PyTorch neCUDA, shandisa murairo unotevera kuti utore YOLOv5.
pip install yolov5
4-Kutevera kuiswa kweYOLOv5, unofanira kudhawunirodha huremu husati hwadzidziswa. Iwo pre-akadzidziswa uremu anowanikwa mune Ultralytics GitHub repo.
Enda kune "zviyereso" chikamu chewebhusaiti nekupuruzira pasi. Unogona kudhawunirodha pre-yakadzidziswa uremu kubva pane iyo rondedzero iwe yaunogona kuwana pano.
5. Sarudza zviremu zvakatodzidziswa uye zvakanyatsoenderana nekushandisa kwako. Iyo dataset kana iyo YOLOv5 vhezheni yakadzidzwa huremu inogona kushandiswa kupfupisa rondedzero.
6- Mushure mekusarudza huremu hwakakodzera, tora huremu nekudzvanya bhatani re "Download" padivi payo. Huremu huchawanikwa pakurodha se. pt mafaira.
7- Fambisa huremu hwakadhawunirodha kune dhairekitori. Apa ndipo pachange pave kushanda gwaro rako rekuona.
8- Panguva ino, unogona kumhanya kuona chinhu pamifananidzo yako kana mavhidhiyo uchishandisa uremu hwakagara hwakadzidziswa mune yako yekuona script.
Gadzirira Data
Iwe unofanirwa kutora zviito zvinotevera kuti data rigadzirire kushandiswa neYOLOv5:
1. Unganidza data: Danho rekutanga kuunganidza mufananidzo kana vhidhiyo data yauchazoda kuona kwechinhu. Zvinhu zvaunoda kuona zvinofanirwa kunge zviripo mumifananidzo kana mavhidhiyo.
2- Fomati iyo data: Unogona kungopinza mafoto mune yako script kana uchiishandisa. Iwe unofanirwa kushandura vhidhiyo kuita nhevedzano yemifananidzo kana ukaronga kushandisa imwe. Unogona kubvisa mafuremu kubva mubhaisikopo uchishandisa raibhurari seOpenCV.
import cv2
img = cv2.imread('path/to/image')
Neraibhurari yeOpenCV, unogona kushandisa unotevera kuraira kushandura vhidhiyo kuita nhevedzano yemifananidzo:
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. Nyora iyo data: Unofanira kunyora iyo data kana uri kushandisa dataset yako. Kudhirowa mabhokisi anosungirira kutenderedza zvinhu zvaunoda kuzivisa mune imwe neimwe furemu yemufananidzo. Ndiyo maitiro ekunyora mazita. Unogona kushandisa maturusi akati wandei kukubatsira kuita uku, kusanganisira LabelImg uye RectLabel.
4- Iwe unofanirwa kupatsanura iyo data mukudzidziswa uye seti yekuyedza mushure mekunge waitaka. Izvi zvakakosha pakuongorora kuti modhi yako inoita sei.
5. Chekupedzisira, ungangoda kufanogadzirisa data usati wadzidzira kana kuyedzwa. Izvi zvinogona kusanganisira kuyera mapikicha kana mavhidhiyo, kuenzanisa kukosha kwepixel, kana kushandisa nzira dzekuwedzera data.
Mushure mekupedza matanho aya, data yako yakagadzirira.
Mhanyai script yekuona
Heino mufananidzo weiyo yekuona script inoongorora mufananidzo uye kuwana zvinhu.
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))
Kutumira-kugadzirisa
Non-maximum suppression ndiyo imwe yeanowanzo itwa post-processing matekiniki anoshandiswa mukuona chinhu (NMS). Isu tinoshandisa NMS kubvisa anopindirana mabhokisi echinhu chimwe chete. Kuita NMS pane zvakaonekwa, tinogona kushandisa iyo OpenCV library's cv2.dnn.NMSBoxes() nzira.
Heino muenzaniso wekuita post-maitiro ekuonekwa uchishandisa NMS.
import cv2
# Perform Non-Maxima Suppression (NMS)
indices = cv2.dnn.NMSBoxes(zvakaonekwa, zvakavanzika, conf_thres, nms_thres)
Kuonekwa
Panyaya yekuona, tinogona zvakare kushandisa raibhurari seOpenCV. Isu tinokwanisa kuratidza mabhokisi anosungira akatenderedza zvinhu zvakawanikwa pane sosi yemufananidzo kana vhidhiyo. Kudhirowa mabhokisi ekusunga mufananidzo, shandisa cv2.rectangle() nzira. Heano maitiro ekuona zvakaonekwa pamufananidzo wekutanga:
kunze cv2
# Draw the bounding boxes on the image
nekuti ini mune indices.
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
Applications
YOLOv5 chinhu chakasimba chekuzivikanwa modhi. Nekudaro, isu tinogona kuishandisa mune dzakawanda-chaiyo-yepasirese mamiriro. Imwe yeanonyanya kushandiswa ndeye mumotokari dzinozvityaira. YOLOv5 inogona kuona zvinhu munguva-chaiyo senge mota nemarobhoti.
Mumasisitimu ekutarisa, tinogona kushandisa YOLOv5 kuziva uye kuronda zvinhu mumavhidhiyo mavhidhiyo. Uyezve, YOLOv5 inogona kuve yakakosha murobhoti. Inogona kubatsira marobhoti kuona uye kunzwisisa zvakavapoteredza. Izvi zvakakosha zvakanyanya kune zviitiko zvakaita sekufamba uye kushandura.
YOLOv5 inogona zvakare kushandiswa mune chero indasitiri inoda kuonekwa kwechinhu, sekutengesa, mitambo, kurapwa, uye chengetedzo.
mhedziso
Pakupedzisira, YOLOv5 ndiyo yazvino uye yakaomesesa vhezheni yemhuri yeYOLO ye kuona kwechinhu Mienzaniso
. Zvakare, zvine hungwaru kutaura kuti ndiyo yakanyanya kujeka yekuona chinhu modhi inowanikwa. Nekuda kwekurongeka kwayo kwepamusoro uye nekumhanya, unogona kuzvisarudzira zvakachengeteka kumapurojekiti ako ekuona chinhu.
Resky Agus
Ini ndinogadzira yekutanga jenari nezve yekuona mota ine yolov5 uye iyi webhu inobatsira kutsvaga ruzivo nezve izvozvo.
Ini ndinofarira zvikuru nezveAI.
kana uchikwanisa ndine mubvunzo wakawanda nezveAI pamwe unogona kundibatsira
Ndatenda