العمليات الأساسية على الصور

الإحداثيات

الحصول على/تعيين البكسل

يمكننا الحصول على قيمة البكسل عبر طريقة image.get_pixel((x, y)).

  • image.get_pixel((x, y))
    • بالنسبة للصور ذات التدرج الرمادي: تُرجع قيمة التدرج الرمادي عند الإحداثية (x, y).
    • بالنسبة للصور الملونة: تُرجع صفًا (r, g, b) للإحداثية (x, y).

وبالمثل، يمكننا تعيين قيمة البكسل عبر طريقة image.set_pixel((x, y), pixel).

  • image.set_pixel((x, y), pixel)
    • بالنسبة للصور ذات التدرج الرمادي: يضبط قيمة التدرج الرمادي عند الإحداثية (x, y).
    • بالنسبة للصور الملونة: يضبط قيمة (r, g, b) عند الإحداثية (x, y).

مثال:

import csi
csi0 = csi.CSI()

img = csi0.snapshot()
img.get_pixel((10, 10))
img.set_pixel((10, 10), (255, 0, 0))# اضبط لون بكسل الإحداثية (10,10) إلى الأحمر (255,0,0)

الحصول على عرض وارتفاع الصورة

  • image.width()\ تُرجع عرض الصورة (بالبكسل)

  • image.height()\ تُرجع ارتفاع الصورة (بالبكسل)

  • image.format()\ ستُرجع الصور ذات التدرج الرمادي csi.GRAYSCALE، وستُرجع الصور الملونة csi.RGB565.

  • image.size()\ تُرجع حجم الصورة (بالبايت)

عمليات الصورة

  • image.invert()

عملية عكس، بالنسبة للصور الثنائية، يصبح 0 (الأسود) 1 (الأبيض)، ويصبح 1 (الأبيض) 0 (الأسود).

ملاحظة:\ يمكن أن تكون الصورة كائن صورة آخر، أو كائن صورة تمت قراءته من ملف (bmp/pgm/ppm).\ يجب أن تكون كلتا الصورتين بنفس الحجم والنوع (تدرج رمادي/ملون).

  • image.nand(image)\ يجري عملية NAND مع صورة أخرى.

  • image.nor(image)\ يجري عملية NOR مع صورة أخرى.

  • image.xor(image)\ يجري عملية XOR مع صورة أخرى.

  • image.xnor(image)\ يجري عملية XNOR مع صورة أخرى.

  • image.difference(image)\ يطرح صورة أخرى من هذه الصورة. على سبيل المثال، لكل بكسل في كل قناة، يُؤخذ القيمة المطلقة للفرق. تُستخدم هذه الدالة غالبًا لاكتشاف الحركة.

results matching ""

    No results matching ""