ulab.utils --- مساعدات أدوات ulab¶
توفر الوحدة الفرعية ulab.utils مجموعة صغيرة من المساعدات التي تعمل على كائنات numpy.ndarray لكنها تعيش خارج السطح القياسي لـ NumPy / SciPy. وقد ضُبطت هذه المساعدات لأنماط التدفق الشائعة على الأهداف المضمَّنة -- المخازن المؤقتة للطرفيات الأعرض من 16 بت، وأطياف المقدار الخالية من التخصيص.
محوّلات المخزن المؤقت¶
إن numpy.frombuffer() القياسية لا تتعامل إلا مع الأنواع التي تعرّفها numpy نفسها (uint8 وint8 وuint16 وint16 وfloat). وتوسّع المساعدات أدناه تلك التغطية لتشمل مخازن البايتات من النوع int16 / uint16 / int32 / uint32 وتُعيد numpy.ndarray من الأعداد العشرية في مرور واحد.
- ulab.utils.from_int16_buffer(buffer: bytes, *, count: int = -1, offset: int = 0, out: numpy.ndarray | None = None, byteswap: bool = False) numpy.ndarray¶
تحويل مخزن مؤقت من عينات
int16إلىnumpy.ndarrayمن الأعداد العشرية في مرور واحد.- المعاملات:
buffer -- مخزن مؤقت شبيه بـ
bytesيحمل العينات.count -- عدد العناصر المراد قراءتها. تقرأ القيمة
-1المخزن المؤقت بأكمله منoffsetحتى النهاية.offset -- عدد البايتات المراد تخطيها في بداية المخزن المؤقت.
out --
numpy.ndarrayاختيارية مخصصة مسبقًا من الأعداد العشرية لكتابة النتيجة فيها. وعند تقديمها، لا تُخصَّص أي مصفوفة جديدة.byteswap -- عكس ترتيب بايتات كل عنصر قبل التحويل -- وهو الإعداد الصحيح عندما يأتي المخزن المؤقت من طرفية كتبت بترتيب بايتات معاكس لترتيب وحدة المعالجة المركزية للكاميرا.
- يُعيد:
numpy.ndarrayمن الأعداد العشرية بطولcount(أو بعدد العينات المتاحة عندما يكونcountهو-1).
- ulab.utils.from_uint16_buffer(buffer: bytes, *, count: int = -1, offset: int = 0, out: numpy.ndarray | None = None, byteswap: bool = False) numpy.ndarray¶
تحويل مخزن مؤقت من عينات
uint16إلىnumpy.ndarrayمن الأعداد العشرية في مرور واحد.- المعاملات:
buffer -- مخزن مؤقت شبيه بـ bytes يحمل العينات.
count -- عدد العناصر المراد قراءتها. تقرأ القيمة
-1المخزن المؤقت بأكمله منoffsetحتى النهاية.offset -- عدد البايتات المراد تخطيها في بداية المخزن المؤقت.
out --
numpy.ndarrayاختيارية مخصصة مسبقًا من الأعداد العشرية لكتابة النتيجة فيها. وعند تقديمها، لا تُخصَّص أي مصفوفة جديدة.byteswap -- عكس ترتيب بايتات كل عنصر قبل التحويل -- وهو الإعداد الصحيح عندما يأتي المخزن المؤقت من طرفية كتبت بترتيب بايتات معاكس لترتيب وحدة المعالجة المركزية للكاميرا.
- يُعيد:
numpy.ndarrayمن الأعداد العشرية بطولcount(أو بعدد العينات المتاحة عندما يكونcountهو-1).
- ulab.utils.from_int32_buffer(buffer: bytes, *, count: int = -1, offset: int = 0, out: numpy.ndarray | None = None, byteswap: bool = False) numpy.ndarray¶
تحويل مخزن مؤقت من عينات
int32إلىnumpy.ndarrayمن الأعداد العشرية في مرور واحد.- المعاملات:
buffer -- مخزن مؤقت شبيه بـ bytes يحمل العينات.
count -- عدد العناصر المراد قراءتها. تقرأ القيمة
-1المخزن المؤقت بأكمله منoffsetحتى النهاية.offset -- عدد البايتات المراد تخطيها في بداية المخزن المؤقت.
out --
numpy.ndarrayاختيارية مخصصة مسبقًا من الأعداد العشرية لكتابة النتيجة فيها. وعند تقديمها، لا تُخصَّص أي مصفوفة جديدة.byteswap -- عكس ترتيب بايتات كل عنصر قبل التحويل -- وهو الإعداد الصحيح عندما يأتي المخزن المؤقت من طرفية كتبت بترتيب بايتات معاكس لترتيب وحدة المعالجة المركزية للكاميرا.
- يُعيد:
numpy.ndarrayمن الأعداد العشرية بطولcount(أو بعدد العينات المتاحة عندما يكونcountهو-1).
- ulab.utils.from_uint32_buffer(buffer: bytes, *, count: int = -1, offset: int = 0, out: numpy.ndarray | None = None, byteswap: bool = False) numpy.ndarray¶
تحويل مخزن مؤقت من عينات
uint32إلىnumpy.ndarrayمن الأعداد العشرية في مرور واحد.- المعاملات:
buffer -- مخزن مؤقت شبيه بـ bytes يحمل العينات.
count -- عدد العناصر المراد قراءتها. تقرأ القيمة
-1المخزن المؤقت بأكمله منoffsetحتى النهاية.offset -- عدد البايتات المراد تخطيها في بداية المخزن المؤقت.
out --
numpy.ndarrayاختيارية مخصصة مسبقًا من الأعداد العشرية لكتابة النتيجة فيها. وعند تقديمها، لا تُخصَّص أي مصفوفة جديدة.byteswap -- عكس ترتيب بايتات كل عنصر قبل التحويل -- وهو الإعداد الصحيح عندما يأتي المخزن المؤقت من طرفية كتبت بترتيب بايتات معاكس لترتيب وحدة المعالجة المركزية للكاميرا.
- يُعيد:
numpy.ndarrayمن الأعداد العشرية بطولcount(أو بعدد العينات المتاحة عندما يكونcountهو-1).
مخطط طيفي¶
- ulab.utils.spectrogram(r: numpy.ndarray, imag: numpy.ndarray | None = None, *, scratchpad: numpy.ndarray | None = None, out: numpy.ndarray | None = None, log: bool = False) numpy.ndarray¶
إعادة مقدار تحويل فورييه المتقطع للدخل، وهو مكافئ من حيث المفهوم لـ
np.sqrt(real * real + imag * imag)بعد استدعاءnumpy.fft.fft()-- دون تخصيص المخازن المؤقتة الوسيطة التي تخصصها الصيغة الصريحة.- المعاملات:
r -- الجزء الحقيقي من الدخل بوصفه
numpy.ndarrayأحادية البُعد من الأعداد العشرية. يجب أن يكون طوله قوة من قوى الاثنين.imag -- الجزء التخيّلي الاختياري من الدخل، بالشكل نفسه الذي لـ r. عند حذفه، يُعامَل الدخل على أنه حقيقي محض.
scratchpad -- مخزن مؤقت عامل اختياري لتحويل FFT. عند تقديمه، لا تُخصَّص أي مصفوفة عمل مؤقتة.
out -- مخزن مؤقت وجهة اختياري مخصص مسبقًا لطيف المقدار. عند تقديمه، تُكتب النتيجة فيه مباشرةً.
log -- عند
True، يُعاد اللوغاريتم الطبيعي للمقدار بدلًا من المقدار نفسه.
- يُعيد:
numpy.ndarrayمن الأعداد العشرية بالطول نفسه الذي لـ r تحمل المقدار (أو لوغاريتمه) عند كل نطاق ترددي.