> 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/image-transformations/analysis/image-memory.md).

# Image Memory

هذا Function Block يحفظ صورة في الذاكرة حتى تتمكن من "تجميد" إطار وإعادته للاستخدام إلى أن تقرر تحديثه. يكون مفيدًا عندما تريد الاحتفاظ بصورة مرجعية للفحص، التسجيل أو المعالجة اللاحقة دون الاعتماد المستمر على مصدر مباشر.

## 📥 المدخلات

* `Image Any`\
  قم بتوصيل الصورة التي تريد حفظها أو تحديثها.
* `Save Image`\
  عندما تكون True، سيقوم البلوك بتجميد الصورة المخزنة حاليًا ولن يتم تحديثها من المدخل.

## 📤 المخرجات

* `Image Any`\
  الصورة المحفوظة حاليًا في الذاكرة (سواء كانت آخر صورة مخزنة أو الدخل الحي إذا لم تكن مجمدة).

## 🕹️ الضوابط (Controls)

* `Save Image`\
  استخدم هذا التحكم البولياني لتجميد أو إلغاء تجميد الصورة المخزنة.
  * إذا كانت True، فستُحفظ الصورة وسيستمر البلوك في إخراج تلك الصورة حتى لو تغير الدخل.
  * إذا كانت False، فسيقوم البلوك بتحديث الصورة المخزنة من مدخل `Image Any`.

## ⚙️ طريقة العمل (Running mechanism)

* بشكل افتراضي، يخرج البلوك أحدث صورة موصولة بمدخل `Image Any`.
* إذا كان `Save Image` مضبوطًا على True، يحتفظ البلوك بالصورة الحالية ويستمر في إخراج نفس الصورة حتى يصبح `Save Image` False.
* عند حفظ وإعادة تحميل المشروع، يمكن للبلوك استعادة الصورة المخزنة بحيث تبقى حالة الذاكرة عبر الجلسات (إذا تم تخزين صورة سابقًا).

## 🎯 الميزات (Features)

* إمكانية تجميد الإطار للحصول على معالجة لاحقة ثابتة.
* تحكم بسيط بنعم/لا لقفل/فتح الصورة المخزنة.
* استمرارية الحفظ عند حفظ/تحميل المشروع بحيث تبقى الصورة المرجعية بين الجلسات.

## 📝 تعليمات الاستخدام (Usage instructions)

1. وصل مصدر صورة حي (كاميرا، بث، تحميل صورة، إلخ) إلى مدخل `Image Any`.
2. لالتقاط إطار وتخزينه، اضبط `Save Image` إلى True. سيستمر البلوك في إخراج ذلك الإطار.
3. لاستئناف التحديثات الحية، اضبط `Save Image` إلى False. عندها سيأخذ البلوك أحدث دخل ويحدث الصورة المخزنة.

## 💡 نصائح وحيل (Tips and Tricks)

* لمعاينة الصورة المخزنة، وصل مخرج هذا البلوك إلى `Show Image`.
* استخدم `Image ROI Select` قبل هذا البلوك لالتقاط وتجمد منطقة اهتمام فقط بدل الإطار الكامل.
* إذا أردت صورة أصغر لحفظ أسرع أو معالجة أدق، أضف `Image Resize` قبل البلوك.
* للحصول على صور مرجعية أكثر ثباتًا، طبق `Blur` أو `Image Threshold` قبل الالتقاط لتقليل الضوضاء أو ثنينة المشهد.
* اجمعه مع `Image Logger` أو `Image Write` لحفظ الصور المجمدة على القرص عند تفعيل `Save Image`.
* استخدم `Is None` أو `Replace None` لاحقًا للتعامل مع حالات عدم وجود صورة في المسار.

## 🛠️ استكشاف الأخطاء وإصلاحها (Troubleshooting)

* إذا بدا المخرج فارغًا بعد تحميل مشروع، تأكد من أنه تم التقاط صورة سابقًا مع تفعيل `Save Image`، أو قدم دخل جديد واضبط `Save Image` إلى False لتحديثها.
* إذا كنت تتوقع تحديثات حية لكن الصورة لا تتغير، تحقق من أن `Save Image` مضبوط على False حتى يسمح البلوك بالتحديث من المدخل.
