Ali Ismael نشر 19 أكتوبر 2021 أرسل تقرير نشر 19 أكتوبر 2021 (معدل) استخدم googlecolab للتطبيق بعض الخوارزميات على الصور، لكن بمجرد محاولة استخدام الدالة cv2.imshow يظهر لي الخطأ التالي، على سبيل المثال: import cv2 import numpy as np img1 = cv2.imread(r'/content/test1 closedeye.jpg') imageresult = cv2.cvtColor(img1, cv2.COLOR_BGR2HSV) cv2.imshow('res',img1) cv2.waitKey(0) cv2.destroyAllWindows() cv2.imwrite('d:\HSV.png',imageresult) --------------------------------------------------------------------------- DisabledFunctionError Traceback (most recent call last) <ipython-input-1-c9e483595677> in <module>() 6 imageresult = cv2.cvtColor(img1, cv2.COLOR_BGR2HSV) 7 # عرض الصورة الناتجة وتخزينها ----> 8 cv2.imshow('res',img1) 9 cv2.waitKey(0) 10 cv2.destroyAllWindows() /usr/local/lib/python3.7/dist-packages/google/colab/_import_hooks/_cv2.py in wrapped(*args, **kwargs) 50 def wrapped(*args, **kwargs): 51 if not os.environ.get(env_var, False): ---> 52 raise DisabledFunctionError(message, name or func.__name__) 53 return func(*args, **kwargs) 54 DisabledFunctionError: cv2.imshow() is disabled in Colab, because it causes Jupyter sessions to crash; see https://github.com/jupyter/notebook/issues/3935. تم التعديل في 19 أكتوبر 2021 بواسطة Ali Ismael 1 اقتباس
1 Ali Haidar Ahmad نشر 19 أكتوبر 2021 أرسل تقرير نشر 19 أكتوبر 2021 (معدل) يظهر هذا الخطأ لأن غوغل كولاب لايدعم استخدام هذه الدالة، لذا كحل بديل يقدم كولاب الدالة: google.colab.patches.cv2_imshow(your_image) وبالتالي يمكنك استخدامها بدلاً من الدالة cv2.imshow كما يلي: import cv2 import numpy as np img1 = cv2.imread(r'/content/test1 closedeye.jpg') imageresult = cv2.cvtColor(img1, cv2.COLOR_BGR2HSV) from google.colab.patches import cv2_imshow # نقوم باستيرادها # استخدامها cv2_imshow(imageresult) أو كحل آخر استخدم مكتبة Matplotlib لكن ستضطر في هذه الحالة إلى تغيير فضاء الألوان للصورة من BGR إلى RGB لأن OpenCV تقرأ الصور بصيغة BGR: from matplotlib import pyplot as plt import cv2 # قراءة الصورة img = cv2.imread(r'C:\Users\Windows.10\Desktop\All\test5 openeye.jpg') # RGB تحويلها إلى img= cv2.cvtColor(img, cv2.COLOR_BGR2RGB) # عرضها plt.imshow(img) تم التعديل في 19 أكتوبر 2021 بواسطة Ali Haidar Ahmad 1 اقتباس
1 Ahmed Sharshar نشر 20 أكتوبر 2021 أرسل تقرير نشر 20 أكتوبر 2021 بشكل عام، يعاني Jupyter notebook من بعض المشاكل في التعامل opencv لذا هناك أكثر من حل: أولا اللجوء الى استخدام matplotlib ولكن هذا يقتضي شكلاً خاصاً لاستخدامها داخل Jupyter كالتالي: %matplotlib inline #هذا السطر مهم لاستخدام المكتبة بداخلJupyter Notebook import cv2 from matplotlib import pyplot as plt #استدعاء الصورة image = cv2.imread("input_path") # تعديل ألوان الصورة image= cv2.cvtColor(image, cv2.COLOR_BGR2RGB) #عرض الصورة plt.imshow(image) plt.show() الحل الثاني أن تقوم باستدعاء cv2.imshow من colab كالتالي كما أوضح أستاذ علي: google.colab.patches.cv2_imshow(your_image) اقتباس
السؤال
Ali Ismael
استخدم googlecolab للتطبيق بعض الخوارزميات على الصور، لكن بمجرد محاولة استخدام الدالة cv2.imshow يظهر لي الخطأ التالي، على سبيل المثال:
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.