> For the complete documentation index, see [llms.txt](https://docs.augelab.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.augelab.com/arabic/alblwkat-alwzyfyh/blocks-reference/detections-shapes/detectors/circle-detector.md).

# Circle Detector

اكتشف الأنماط الدائرية في صورة واحصل على تفاصيل مرئية ورقمية حول الدوائر المكتشفة. هذا البلوك مُصمم للميزات الدائرية (مثلاً: أجزاء دائرية، ثقوب، علامات مستديرة) ويعرض منازلقات بديهية لتعديل حساسية الاكتشاف ونطاقات الحجم.

## 📥 المدخلات <a href="#inputs" id="inputs"></a>

* `Image Any` الصورة التي ستُحلل بحثًا عن أشكال دائرية.

## 📤 المخرجات <a href="#outputs" id="outputs"></a>

* `Result` الصورة المشروحة مع الدوائر المكتشفة مرسومة.
* `Positions` قائمة إحداثيات مراكز الدوائر (x, y) الموجودة في الصورة.
* `Number of Circles` عدد الدوائر المكتشفة.
* `Circles` تفاصيل أشكال الدوائر (المركز ونصف القطر) لمعالجة لاحقة.

## 🕹️ عناصر التحكم <a href="#controls" id="controls"></a>

* `dp` النسبة العكسية بين دقة المجمع (accumulator) ودقة الصورة (تؤثر على حساسية الاكتشاف والتعامل مع المقاييس).
* `Edge Detection` يتحكم في حساسية اكتشاف الحواف الداخلية المستخدمة للعثور على الدوائر.
* `Threshold` يتحكم في عتبة المجمع التي تقرر قبول دائرة مرشحة أم لا.
* `Min Distance` الحد الأدنى للمسافة بين مراكز الدوائر (يساعد على تجنب الاكتشافات المكررة).
* `Min Radius (% width)` الحد الأدنى لنصف القطر الذي يُؤخذ بعين الاعتبار، معرّفًا كنسبة مئوية من عرض الصورة.
* `Max Radius (% width)` الحد الأقصى لنصف القطر الذي يُؤخذ بعين الاعتبار، معرّفًا كنسبة مئوية من عرض الصورة.

اضبط هذه العناصر تفاعليًا لضبط الاكتشاف ليتناسب مع الكاميرا، الإضاءة، وأحجام الأجسام الخاصة بك.

## ⚙️ كيفية التشغيل <a href="#running-mechanism" id="running-mechanism"></a>

عند استلام البلوك لصورة، يقوم بتحويل الصورة إلى تدرج رمادي (معالجة مرئية أولية) ثم يبحث عن أنماط دائرية بناءً على إعدادات المنزلقات الحالية. تُرسم الدوائر المكتشفة على نسخة من الصورة، ويُخرج البلوك الصورة المشروحة، قائمة مواقع المراكز، العدد الإجمالي، وأشكال الدوائر (المركز + نصف القطر) للمعالجة اللاحقة.

## ✨ الميزات <a href="#features" id="features"></a>

* منازلقات قابلة للتعديل في الزمن الحقيقي لضبط المعلمات بسرعة.
* مخرجات بصريّة ومهيكلة (مواقع، أعداد، أشكال الدوائر).
* معايير نصف القطر معبر عنها كنسب مئوية لتسهيل التكيف عبر أحجام صور مختلفة.
* تجنب الاكتشافات المكررة باستخدام مسافة مركز دنيا قابلة للتكوين.

## 📝 الاستخدام <a href="#usage" id="usage"></a>

1. قم بتغذية صورة إلى مدخل `Image Any`.
2. استخدم `Min Radius (% width)` و`Max Radius (% width)` لتقييد الاكتشافات إلى نطاق حجم الأجسام المتوقع.
3. اضبط `Edge Detection` و`Threshold` لتقليل الإيجابيات الخاطئة أو لاستعادة الدوائر المفقودة.
4. فحص النتائج بصريًا عبر مخرج `Result` واستخدم `Positions` أو `Circles` لأتمتة أو العد.

## 💡 نصائح وحيل <a href="#tips-and-tricks" id="tips-and-tricks"></a>

* قم بعمل معالجة مسبقة للصور المشوشة باستخدام `Blur` أو `Denoising` لتقليل الاكتشافات الخاطئة وتنعيم الحواف.
* إذا كانت الأجسام المطلوبة تشغل جزءًا من المشهد فقط، قص المنطقة باستخدام `Image ROI Select` قبل الاكتشاف لتسريع المعالجة وتقليل الإيجابيات الخاطئة.
* استخدم `Image Resize` لتسريع الاكتشاف أثناء ضبط المعلمات، ثم ارجع إلى الدقة الكاملة في التشغيل النهائي.
* ادمج مع `Image Threshold` أو `Morphological Transformations` لتوضيح الحواف الدائرية عندما يكون التباين منخفضًا.
* قم بالتحقق أو تصفية الاكتشافات بدمج المخرجات مع `Blob Detector` أو `Find Contour` للتأكد من الخصائص الشكلية أو المساحية.
* اعرض النتائج للتقديم باستخدام `Draw Detections` وافحصها في نافذة أكبر عبر `Show Image`.

تدفقات عمل مقترحة شائعة:

* للعلامات الدائرية الصغيرة: `Image ROI Select` → `Blur` → هذا البلوك → `Draw Detections` → `Show Image`.
* للحلقات منخفضة التباين: `Adjust Colors` → `Image Threshold` → `Morphological Transformations` → هذا البلوك.

## 🛠️ استكشاف الأخطاء وإصلاحها <a href="#troubleshooting" id="troubleshooting"></a>

* لا توجد دوائر مكتشفة: زد `Edge Detection` أو خفّض `Threshold`؛ وتأكد أن `Min Radius` و`Max Radius` يشملان الحجم الحقيقي للجسم.
* الكثير من الإيجابيات الخاطئة: ارفع `Threshold` أو زد `Min Distance` لمنع الاكتشافات المكررة/القريبة؛ جرب `Image Threshold` أو `Morphological Transformations` لتنظيف الصورة.
* اكتشافات متداخلة/مكررة: زد `Min Distance` بحيث يجب أن تكون المراكز المرشحة أبعد عن بعضها.
* بطء في المعالجة: قلل حجم الصورة باستخدام `Image Resize` أو حد منطقة البحث باستخدام `Image ROI Select`.
* نتائج متقلبة تحت إضاءات مختلفة: جرب `Adjust Colors` أو استخدم `Blur`/`Denoising` لتحقيق استقرار الإدخال قبل الاكتشاف.
