Ali Ismael نشر 29 أكتوبر 2021 أرسل تقرير نشر 29 أكتوبر 2021 أعمل على مهمة لتحديد حدقية العين، لذا أحتاج لرسم دائرة، فهل هناك دالة للقيام بذلك في بايثون أو OpenCV؟ 1 اقتباس
0 Ali Haidar Ahmad نشر 29 أكتوبر 2021 أرسل تقرير نشر 29 أكتوبر 2021 يمكنك استخدام الدالة cv2.circle: cv2.circle(img, center, radius, color, thickness=1) حيث لرسمها نحتاج إلى نصف قطرها radius و مركزها center وكذلك يمكنك تحديد لون للدائرة من خلال الوسيط color وكذلك يمكنك تحديد سماكتها من خلال الدالة thickness. انظر للمثال التالي: الصورة الأصلية: import cv2 # مسار الصورة path = r'/content/test5 openeye.jpg' # قراءة الصورة image = cv2.imread(path) # مركز الدائرة center_coordinates = (150, 70) # نصف القطر radius = 100 # اللون color = (200, 255, 200) # السماكة thickness = 2 # رسم الدائرة image = cv2.circle(image, center_coordinates, radius, color, thickness) # عرض from google.colab.patches import cv2_imshow cv2_imshow(image) النتيجة: اقتباس
0 Ahmed Sharshar نشر 29 أكتوبر 2021 أرسل تقرير نشر 29 أكتوبر 2021 (معدل) الموضوع بسيط، يمكنك ايجاد منتصف الوجه ثم رسم الدائرة بابعادها التي تريدها ببساطة، الكود التالي يقوم بهذا: import cv2 #كود تحديد الوجة، قد لا تحتاجه لو لا تريد ايجاد الوقة تلقائيا face_cascade = cv2.CascadeClassifier("face.xml") cap = cv2.VideoCapture(0) while True: _, img = cap.read() gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) faces = face_cascade.detectMultiScale(gray, 1.1, 4) for (x, y, w, h) in faces: center_coordinates = x + w // 2, y + h // 2 radius = w // 2 ايجاد نقطه المنتصف #رسم الدائرة cv2.circle(img, center_coordinates, radius, (0, 0, 100), 3) cv2.imshow('img', img) k = cv2.waitKey(30) & 0xff if k == 27: break cap.release() وتظهر كالتالي: تم التعديل في 29 أكتوبر 2021 بواسطة Ahmed Sharshar اقتباس
السؤال
Ali Ismael
أعمل على مهمة لتحديد حدقية العين، لذا أحتاج لرسم دائرة، فهل هناك دالة للقيام بذلك في بايثون أو OpenCV؟
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.