اذهب إلى المحتوى
  • 0

تقسيم الصورة إلى ثلاث صور لقنوات RGB وإعادة دمجها باستخدام OpenCV في بايثون

Ali Ismael

السؤال

Recommended Posts

  • 0

لتقسيم الصورة يمكنك القيام بذلك من خلال الدالة cv2.split:

cv2.split(image)

و دمجها من خلال:

cv2.merge(image)

مثال:

import cv2 as cv
import numpy as np
from google.colab.patches import cv2_imshow
# قراءة الصورة الملونة
img = cv2.imread("/content/test5 openeye.jpg") # BGR تقوم بقراءة الصورة بصيغة Opencv
# تقسيم الصورة
b, g, r = cv2.split(img)
# هنا يمكنك تنفيذ ماتشاء من عمليات
# دمجها مرة أخرى
image_merge = cv2.merge([b, g, r])

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

تستطيع فصل كل قناة من قنوات الصورة الثلاث بمفردها باستخدام الدالة cv2.split كالتالي:

# تحميل الصورة
image = cv2.imread("image")
#فصل قنوات الصورة، لاحظ هنا ترتيب القنوات مناسب لما تقوم المكتبة بقراءته وهو BGR
(B, G, R) = cv2.split(image)
# اظهار كل قناة بمفردها
cv2.imshow("Red", R)
cv2.imshow("Green", G)
cv2.imshow("Blue", B)
cv2.waitKey(0)

وتبدو هكذا عند اظهارها:

618ab0a4d9d5d_opencv_split_merge_channels_01(1).png.b87766919390d43e6ec9cd79ed0d9bd8.png

ويمكنك كذلك تمثيل كل لون ومساهته في الخلفية هكذا:

# تمثيل الالوان
zeros = np.zeros(image.shape[:2], dtype="uint8")
cv2.imshow("Red", cv2.merge([zeros, zeros, R]))
cv2.imshow("Green", cv2.merge([zeros, G, zeros]))
cv2.imshow("Blue", cv2.merge([B, zeros, zeros]))
cv2.waitKey(0)

وهنا تظهر هكذا:

opencv_split_merge_channels_vis_01.png.d4a8f130044fe4a855377066cfe6602d.png

ثم تستطيع اعادة دمجها مرةأخرى بأي ترتيب تريد باستخدام ال\الة cv2.merge هكذا:

# دمجهم بالترتيب الصحيح
merged = cv2.merge([B, G, R])
cv2.imshow("Merged", merged)
cv2.waitKey(0)
cv2.destroyAllWindows()

وتظهر حينها ملونة هكذا:

opencv_split_merge_merdged_01.png.e9276d5af816d5f5e9721f000f13aedb.png

 

تم التعديل في بواسطة Ahmed Sharshar
رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...