import cv2
import numpy as np
# YOLO modelini yükleme
net = cv2.dnn.readNet("yolov3.weights", "yolov3.cfg")
classes = []
with open("coco.names", "r") as f:
classes = [line.strip() for line in f.readlines()]
layer_names = net.getLayerNames()
output_layers = [layer_names[i[0] - 1] for i in net.getUnconnectedOutLayers()]
# Kamera yakalaması başlatılıyor
kamera = cv2.VideoCapture(0)
# Tanımlanan nesnelerin sayısını ve isimlerini tutacak liste
tanımlanan_nesneler = []
while True:
ret, kare = kamera.read()
kare = cv2.resize(kare, None, fx=0.4, fy=0.4)
height, width, channels = kare.shape
# Nesne algılama işlemi
blob = cv2.dnn.blobFromImage(kare, 0.00392, (416, 416), (0, 0, 0), True, crop=False)
net.setInput(blob)
outs = net.forward(output_layers)
# Tanımlanan nesnelerin koordinatlarını ve etiketlerini çizme
for out in outs:
for detection in out:
scores = detection[5:]
class_id = np.argmax(scores)
confidence = scores[class_id]
if confidence > 0.5:
# Algılanan nesnenin etiketini alıyoruz
label = str(classes[class_id])
# Eğer daha önce tanımlanmış bir nesne değilse ve listemizde yoksa, listeye ekliyoruz
if label not in tanımlanan_nesneler:
print(f"{label} algılandı.")
tanımlanan_nesneler.append(label)
# Eğer 10 farklı nesneyi algıladıysak, döngüden çıkıyoruz
if len(tanımlanan_nesneler) >= 10:
break
# Eğer 10 farklı nesneyi algıladıysak, döngüden çıkıyoruz
if len(tanımlanan_nesneler) >= 10:
break
# Kamera serbest bırakılıyor ve pencereler kapatılıyor
kamera.release()
cv2.destroyAllWindows()
{"html5":"htmlmixed","css":"css","javascript":"javascript","php":"php","python":"python","ruby":"ruby","lua":"text\/x-lua","bash":"text\/x-sh","go":"go","c":"text\/x-csrc","cpp":"text\/x-c++src","diff":"diff","latex":"stex","sql":"sql","xml":"xml","apl":"apl","asterisk":"asterisk","c_loadrunner":"text\/x-csrc","c_mac":"text\/x-csrc","coffeescript":"text\/x-coffeescript","csharp":"text\/x-csharp","d":"d","ecmascript":"javascript","erlang":"erlang","groovy":"text\/x-groovy","haskell":"text\/x-haskell","haxe":"text\/x-haxe","html4strict":"htmlmixed","java":"text\/x-java","java5":"text\/x-java","jquery":"javascript","mirc":"mirc","mysql":"sql","ocaml":"text\/x-ocaml","pascal":"text\/x-pascal","perl":"perl","perl6":"perl","plsql":"sql","properties":"text\/x-properties","q":"text\/x-q","scala":"scala","scheme":"text\/x-scheme","tcl":"text\/x-tcl","vb":"text\/x-vb","verilog":"text\/x-verilog","yaml":"text\/x-yaml","z80":"text\/x-z80"}