انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید


ارائه ۲۴٫۱۰ اوبونتو منتشر شد 🎉

نویسنده موضوع: ارور segmentation fault (core dumped) هنگام استفاده از کتابخانه opencv در پایتون  (دفعات بازدید: 923 بار)

0 کاربر و 1 مهمان درحال مشاهده موضوع.

آفلاین hamraaz

  • Jr. Member
  • *
  • ارسال: 46
با سلام
من برای پروژه های دانشگاهی نیاز دارم از کتابخانه opencv استفاده کنم اما هنگام اجرا با ارور segmentation fault (core dumped) مواجه میشم.
از درستی کد مطمئنم چون داخل ویندوز خروجی گرفتم. کتابخانه رو هم پاک کردم و مجدد نصب کردم یا از مفسر های مختلف استفاده کردم اما مشکل حل نشد.
ممنون میشم اگر راهنمایی کنید.

آفلاین مرتضی . م

  • High Hero Member
  • *
  • ارسال: 1121

آفلاین دانیال بهزادی

  • ناظر انجمن
  • *
  • ارسال: 19722
  • جنسیت : پسر
  • Urahara Kiesuke
    • وبلاگ
کدت رو بذار ببینیم چشه.
اگه این ارسال بهت کمک کرد، دنبال دکمهٔ تشکر نگرد. به جاش تو هم به جامعهٔ آزادت کمک کن

آفلاین عرفان خیراللهی

  • Jr. Member
  • *
  • ارسال: 41
  • جنسیت : پسر
  • KDE - دبیان ناپایدار
    • یک نام دامنه
سلام
اول از همه نسخه پایتون مطمئن بشید. برنامه باید روی پایتون نسخه ۳ اجرا بشه. پس به جای استفاده از دستور python مستقیما از دستور python3 استفاده کنید.
برای نصب کتاب‌خانه از این دستور استفاده کنید:
python3 -m pip install --upgrade opencv-python

و برای اجرای برنامه همون‌طور که گفتم از دستور python3 استفاده کنید.
برای این که بدونید آیا مشکل از برنامه شماست یا از محیط، یک برنامه کوچک چند خطی برای تست بنویسید یا از اینترنت کپی کنید. برای مثال کل برنامه می‌تونه همین یک خط باشه:
import cv2

اگر اجرا شد، پس برید سراغ برنامه خودتون.
اگر هم‌چنان مشکل پابرجا بود، کد رو این‌جا بگذارید. شاید مشکل از اون باشه. مثلا ممکنه یک آرایه تعریف کرده‌باشید و سعی کنید به اعضایی که داخل آرایه نیستند دسترسی پیدا کنید. (هرچند کتاب‌خانه opencv معمولا این‌ها رو تشخیص می‌ده و قبل از سیستم‌عامل جلوی اجرای برنامه رو می‌گیره.)
;D گامباره گامباره سننننن‌پای!

آفلاین hamraaz

  • Jr. Member
  • *
  • ارسال: 46
با ipython تست کن
با ipython و notebook هم نتیجه مشابه بود.

آفلاین hamraaz

  • Jr. Member
  • *
  • ارسال: 46
کدت رو بذار ببینیم چشه.
کدش ساده اس و مشکلی هم نداره تست شده.
قصد داشتم مقدار روشنایی تصویری رو 50 تا بیشتر کنم.
import cv2
# # problem 1-1
# # Add a constant value of 50. The edited image is more brightness than the orginal image.
myImage = cv2.imread("pepper.jpg", cv2.IMREAD_GRAYSCALE)
for pixel in myImage:
    for step in range(len(pixel)):
        if pixel[step] >= 205:
            pixel[step] = 255
        else:
            pixel[step] += 50
cv2.imshow('edited pepper', myImage)
cv2.waitKey(0)
cv2.destroyAllWindows()
« آخرین ویرایش: 29 آبان 1400، 09:15 ب‌ظ توسط hamraaz »

آفلاین hamraaz

  • Jr. Member
  • *
  • ارسال: 46
سلام
اول از همه نسخه پایتون مطمئن بشید. برنامه باید روی پایتون نسخه ۳ اجرا بشه. پس به جای استفاده از دستور python مستقیما از دستور python3 استفاده کنید.
برای نصب کتاب‌خانه از این دستور استفاده کنید:
python3 -m pip install --upgrade opencv-python

و برای اجرای برنامه همون‌طور که گفتم از دستور python3 استفاده کنید.
برای این که بدونید آیا مشکل از برنامه شماست یا از محیط، یک برنامه کوچک چند خطی برای تست بنویسید یا از اینترنت کپی کنید. برای مثال کل برنامه می‌تونه همین یک خط باشه:
import cv2

اگر اجرا شد، پس برید سراغ برنامه خودتون.
اگر هم‌چنان مشکل پابرجا بود، کد رو این‌جا بگذارید. شاید مشکل از اون باشه. مثلا ممکنه یک آرایه تعریف کرده‌باشید و سعی کنید به اعضایی که داخل آرایه نیستند دسترسی پیدا کنید. (هرچند کتاب‌خانه opencv معمولا این‌ها رو تشخیص می‌ده و قبل از سیستم‌عامل جلوی اجرای برنامه رو می‌گیره.)
من از آخرین نسخه پایتون استفاده می کنم و از خود کد هم مطمئنم چون رو چند سیستم ازش خروجی گرفتم و کد هم ساده اس.
باید مشکل از کتابخانه باشه به نظرم چون به محض استفاده از این کتابخانه یعنی وقتی اجرا میگیرم به این مشکل بر میخورم.
کد رو هم گذاشتم.

آفلاین دانیال بهزادی

  • ناظر انجمن
  • *
  • ارسال: 19722
  • جنسیت : پسر
  • Urahara Kiesuke
    • وبلاگ
مشکل از ناسازگاری برنامهٔ نمایش‌دهندهٔ تصویر پیش‌گزیدهٔ opencv با وی‌لنده. می‌تونی به جای:
cv2.imshow('edited pepper', myImage)
cv2.waitKey(0)
cv2.destroyAllWindows()
بنویسی:
cv2.imwrite('edited.png', myImage)
تا ذخیره‌اش کنه.
اگه این ارسال بهت کمک کرد، دنبال دکمهٔ تشکر نگرد. به جاش تو هم به جامعهٔ آزادت کمک کن

آفلاین hamraaz

  • Jr. Member
  • *
  • ارسال: 46
مشکل از ناسازگاری برنامهٔ نمایش‌دهندهٔ تصویر پیش‌گزیدهٔ opencv با وی‌لنده. می‌تونی به جای:
cv2.imshow('edited pepper', myImage)
cv2.waitKey(0)
cv2.destroyAllWindows()
بنویسی:
cv2.imwrite('edited.png', myImage)
تا ذخیره‌اش کنه.
ممنونم جواب داد. راهی هست که مشکل رو به طور کلی حل کنم؟