لوگوی پی سی اسکریپت

برای مشاهده لیست علاقه مندی ها وارد شوید!

مشاهده محصولات فروشگاه
0

هیچ محصولی در سبد خرید نیست.

کار با تصویر در OpenCV ; خواندن تصویر

دسته بندی :OpenCV, آموزش, آموزش برنامه نویسی, پایتون 3 آگوست 2019 امید 224
windows-python-opencv

اول از این که کار با تصویر در OpenCV رو شروع کنیم، باید بدونیم که خود تصویر ، چه نوع داده ای هستش. کامپیوتر یک تصویر رو به چه صورت میبینه؟ برای رسیدن به این جواب، زیاد فلسفی حرف نمیزنیم. یه پوشه توی یه درایو ایجاد کنید و یه تصویر به این پوشه منتقل کنید .اسم فایل رو میزاریم avalin.jpg. خوب حالا مسیر پوشه رو توی cmd باز کنین :

 

opencv-python-p30script.com (1)

کار با تصویر در OpenCV

حالا توی CMD تایپ کنید python و Enter رو بزنید. اگه خوش شانس باشین و مشکلی پیش نیاد،متنی مثل تصویر زیر رو میبینین :

 

opencv-python-p30script.com (1)

کار با تصویر در OpenCV

 

حالا باید کتابخانه OpenCV رو فراخوانی کنیم . برای این کار هم توی ادامه کار تایپ میکنید import cv2. اگه طبق آموزش موجود در پست “نصب و راه اندازی OpenCV برای Python در windows 10” عمل کرده باشید، با خطایی روبرو نمیشید.

حالا باید فایل رو از ورودی بخونیم. برای این منظور از تابع imread استفاده میکنید :

img = cv2.imread(‘D:/P30Script/opencv/02/avalin.jpg’)

توجه داشته باشید که باید قبل از imread از cv2 استفاده کنیم تا مشخص بشه صاحب این تابع کیه،الکی نیست که هرکی بیاد از ورودی یچی برا خودش بخونه. نکته بعد این که متاسفانه ما توی ویندوز داریم کار میکنیم پس باید مسیر کامل فایل رو بدیم. حالا با استفاده از type نوع فایل تصویر رو مشخص میکنیم :

 

opencv-python-p30script.com (1)

خوب به سلامتی مشخص شد که فایل تصویر ما در اصل یه آرایه هستش که ادای تصویری در میاره! خوب ثابت کردیم که نیاز به numpy داریم :|.

 

چگونه در OpenCV+Python تصویر را بخوانیم و ذخیره کنیم؟

حالا متوجه نوع فایل شدیم دیگه وقتشه که کار با اون رو شروع کنیم. خوب برای این کار یک فایل به نام avalin-opcv.py بسازین و بعد به وسیله محیط برنامه نویسی مورد علاقه خودتون بازش کنین. ما که از VSCode استفاده میکنیم. فایل رو ذخیره کنید. فایل همونجایی قرار داره که تصویرمونو آپلود کرده بودیم : avalin.jpg . حالا قطعه کد زیر روی توی فایل پایتونتون بنویسین و بعد اجرا بگیرینش:

import numpy as np
import cv2
img0 = cv2.imread('D:/P30Script/opencv/02/avalin.jpg',0)
img1 = cv2.imread('D:/P30Script/opencv/02/avalin.jpg',1)
img2 = cv2.imread('D:/P30Script/opencv/02/avalin.jpg',-1)
cv2.imshow('image0',img0)
cv2.imshow('image1',img1)
cv2.imshow('image-1',img2)
cv2.waitKey(0)

 

دو خط اول که میشه فراخوانی کتابخانه های numpy و OpenCV. توی خط سوم فایل رو از منبع میخونیم اما به یه تفاوت از کد قبلی داریم اون هم خوندن تصویر به صورت سیاه و سفید هستش. تابع imread سه حالت خوندن تصویر داره:

 

  • cv2.IMREAD_COLOR : Loads a color image. Any transparency of image will be neglected. It is the default flag.
  • cv2.IMREAD_GRAYSCALE : Loads image in grayscale mode
  • cv2.IMREAD_UNCHANGED : Loads image as such including alpha channel

 

خاکستری، رنگی و بدون تغییر که این سه حالت با قرار دادن اعداد 0، 1 و -1 به ترتیب قابل استفاده هستند . خروجی کد بالا، سه تصویر خواهد بود .

 

opencv-python-p30script.com (1)

کار با تصویر در OpenCV

 

چگونه با opencv دوربین یا وب کم را فراخوانی کنیم؟

 

کد زیر را در یک فایل python قرار داده و ران کنید :

import cv2

cap=cv2.VideoCapture(0)

if not cap.isOpened():
raise IOError("webcam baz nemishe")

while True:
rat,frame=cap.read()
frame=cv2.resize(frame,None,fx=1.0,fy=1.0,interpolation=cv2.INTER_AREA)
#def resize(src, dsize, dst, fx, fy, interpolation)
cv2.imshow('input',frame)

c=cv2.waitKey(1)
print(c)
if c==27:
break

cap.release()
cap.destroyAllWindows()

نتیجه کد :

 

 

 

این قسمت واسه اونایی بود که عجله دارن یهو میخوان بزنن آخر سریال رو ببینند. در ادامه بیشتر با تصاویر کار خواهیم کرد، با ما همراه باشید ;).

امید

راه آسان‌تری برای ارتباط با کاربران‌مان پیدا کرده‌ایم :) عضویت در کانال

مطالب زیر را حتما بخوانید:

قوانین ارسال دیدگاه در سایت

  • چنانچه دیدگاهی توهین آمیز باشد تایید نخواهد شد.
  • چنانچه دیدگاه شما جنبه ی تبلیغاتی داشته باشد تایید نخواهد شد.
  • چنانچه از لینک سایر وبسایت ها و یا وبسایت خود در دیدگاه استفاده کرده باشید تایید نخواهد شد.
  • چنانچه در دیدگاه خود از شماره تماس، ایمیل و آیدی تلگرام استفاده کرده باشید تایید نخواهد شد.
  • چنانچه دیدگاهی بی ارتباط با موضوع آموزش مطرح شود تایید نخواهد شد.

  1. سارا گفته؛
    22:13 2021/02/24

    سلام ممنون میشم که سوال من را جواب دهید.چه طور میشه ی فایل ۱۰۰۰ تصویری را در opencv لود کرد و بعد روش پردازش انجام داد.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

لینک کوتاه:

دلیل بازگشت وجه