جدول المحتويات:

معالج الصور المشفر GET1033 Python: 5 خطوات
معالج الصور المشفر GET1033 Python: 5 خطوات

فيديو: معالج الصور المشفر GET1033 Python: 5 خطوات

فيديو: معالج الصور المشفر GET1033 Python: 5 خطوات
فيديو: كيفية اصلاح الصور و الفيديو والملفات التالفة و المعطوبة بسهولة 2024, شهر نوفمبر
Anonim
معالج الصور المشفر بيثون GET1033
معالج الصور المشفر بيثون GET1033

يدور هذا المشروع حول إنشاء معالج الصور المشفر بلغة Python الخاصة بي للوحدة النمطية الخاصة بي ، GET1033 استكشاف محو الأمية الحاسوبية للوسائط. في البداية ، سيحتاج المستخدم إلى إدخال صورة خاصة به ثم تحديد المرشحات التي يريدها. لقد أنشأت 9 مرشحات وهي: إظهار صورة الإدخال ، المرآة ، وضع خلف الشريط ، وضع خلف الشريط الشفاف ، صورة الدائرة ، التعتيم ، الدوران ، تغيير اللون وفوتوشوب. بعد تحديد أحدها ، سيكون للصورة الناتجة التأثيرات. كما هو موضح في الصورة ، فهو مرشح لتغيير اللون حيث أكتشف وحدات البكسل ذات اللون الأخضر في الصورة وأقوم بتحويلها إلى اللون الوردي.

الخطوة 1: عملية صنعه

عملية صنعه
عملية صنعه

الخطوة 1: قم بتنزيل Python من هنا!

الخطوة 2: كودها!

بادئ ذي بدء ، قمت باستيراد بعض الحزم ذات الوظيفة المشفرة مسبقًا المتاحة للاستخدام في الكود. الحزم التي استوردتها هي Scipy و Matplot و Numpy.

بالنسبة إلى Scipy ، قمت باستيراد إجراءات متنوعة (MISC) ومعالجة الصور متعددة الأبعاد (NDIMAGE). MISC مخصص لقراءة الصورة وحفظها بينما NDIMAGE هو إجراء مرشح gaussian وتدويره.

بالنسبة لـ Matplotlib ، فهي مكتبة لتخطيط الرسم البياني في Python والتي توفر واجهة تشبه MATLAB.

بالنسبة إلى Numpy ، فهي مكتبة يمكنها دعم المصفوفات والمصفوفات الكبيرة متعددة الأبعاد. Numpy مهم لأنه يمكّنني من تحرير مصفوفة الأحمر والأخضر والأزرق (RGB) للصور بكفاءة عندما أقوم بإضافة أو ضرب المصفوفة. على سبيل المثال ، A = [0 ، 1 ، 2] وبوجود Numpy ، A * 2 = [0 ، 2 ، 4] بدلاً من الحصول على A * 2 = [0 ، 1 ، 2 ، 0 ، 1 ، 2].

عندما أعمل على مرشح تغيير اللون ، أحاول تحويل الشعر الأخضر للفتاة إلى اللون الوردي. لذا ، ما فعلته هو اكتشاف وحدات البكسل ذات اللون الأخضر في الصورة وضربها بـ (2 ، 0.2 ، 0.8). وبالتالي ، سأحصل على فتاة ذات شعر وردي بدلاً من الشعر الأخضر الفعلي.

بالنسبة لبرنامج Photoshop ، أحاول استبدال الخلفية الخضراء في صورة Avengers بصورة NUS. لذا ، ما فعلته هو ضرب 0 لكل وحدات البكسل الخضراء ثم إضافة وحدات البكسل الخاصة بصورة NUS إلى وحدات البكسل الخضراء. سيحصل هذا بعد ذلك على صورة لـ Avengers في NUS.

لقد أرفقت أيضًا الكود الخاص بي على GitHub ويمكنك تنزيله هنا!

الخطوة 2: كيف تعمل؟

كيف تعمل؟
كيف تعمل؟

تم إرفاق المخطط الانسيابي لإظهار كيفية عمل الكود بالكامل!

1. أولاً ، يُطلب من المستخدم إدخال صورة من اختياره. 2. سيعرض بعد ذلك قائمة المرشحات التي يمكن للمستخدم الاختيار من بينها. 3. إذا قام المستخدم بإدخال "1" إلى "9" ، فستتم معالجة الصورة وإخراجها وفقًا لكل مرشح. إذا قام المستخدم بإدخال "R" ، فسيتم إعادة تعيين البرنامج بالكامل وسيُطلب من المستخدم تحميل صورة مرة أخرى. إذا قام المستخدم بإدخال "Q" ، فسيخرج البرنامج من الحلقة.

الخطوة الثالثة: ماذا تفعل؟

في هذا المشروع ، هناك ما مجموعه 9 فلاتر قمت بإنشائها ، وهي

1. إظهار صورة الإدخال - لإظهار الصورة التي تم تحميلها

2. صورة معكوسة - تكرار منعكس لجسم ما ولكن يتم عكسه في الاتجاه

3. وضع خلف الشريط - إدخال أشرطة عمودية سوداء بعرض ومسافة تساوي 50 بكسل.

4. وضع خلف الشريط الشفاف - إدخال أشرطة عمودية شفافة بعرض ومسافة تساوي 50 بكسل

5. صورة دائرية - لعمل دائرة في وسط الصورة

6. التعتيم - لطمس الصورة

7. دوران - لتدوير الصورة بمقدار 45 درجة

8. تغيير اللون - لتغيير اللون الأخضر إلى اللون الوردي

9. فوتوشوب - لتغيير جزء من صورة بصورة أخرى

الخطوة 4: لماذا فعلت ذلك؟

في السابق ، أشعر بالفضول بشأن كيفية ابتكار Instagram و Snapchat لفلاتر للصور مما جعلها ممتعة للغاية. بعد المحاضرة والبرنامج التعليمي حول الواقع المعزز ، أردت أن أفعل شيئًا متعلقًا به ولكني أود أن أبدأ من الأساسي وهو معالجة الصور لأنني ضعيف في البرمجة وأرغب في تعلم ترميز بايثون.

الخطوة 5: التحسينات وماذا ستفعل الإصدارات المستقبلية؟

تتمثل إحدى التحسينات في هذا المشروع في إنشاء مرشحات وجه خاصة بي في مقاطع فيديو مباشرة باستخدام Python. حاولت ترميز هذا ولكن لم أتمكن من تحقيق أي منها بسبب نقص المعرفة بالبرمجة وضيق الوقت. بصرف النظر عن ذلك ، يمكن أن يكون معالج الصور "أكثر ذكاءً" حيث يمكنه تلقائيًا اكتشاف الألوان وتغيير الأجزاء التي نريدها فقط. هناك مرة أحاول فيها تغيير الشعر الأسود لشخص ما إلى لون آخر. انتهى بي الأمر بتغيير لون العين والشعر إلى اللون الأزرق مما يجعل الصورة تبدو غريبة للغاية. آمل أن أكون قادرًا على إنشاء وجهي

موصى به: