هوش مصنوعی-آموزش بینایی رایانه پایتون با OpenCV

هوش مصنوعی-آموزش بینایی رایانه پایتون با OpenCV

AI-چشم انداز رایانه پایتون آموزش با OpenCV

رایانه در پایتون چیست؟

بینایی رایانه ای زمینه ای از چندین رشته است که به نحوه درک رایانه ها از تصاویر/فیلم های دیجیتال در سطح بالا اهمیت می دهد. این تلاشی برای خودکارسازی وظایفی است که سیستم بینایی انسان قادر به انجام آن است. این یک فرایند کسب ، پردازش ، تجزیه و تحلیل و درک تصاویر دیجیتال و استخراج داده های با ابعاد بالا از دنیای واقعی (برای تولید اطلاعات عددی/نمادین) است.

تشخیص تحلیل حرکت بازسازی صحنه بازیابی تصویر

زمینه های مربوط به دید رایانه ای پایتون: < /p> هوش مصنوعی فیزیک حالت جامد نوروبیولوژی پردازش سیگنال آمار ، بهینه سازی ، هندسه

برخی از کاربردهای Python Computer Vision:

بازرسی خودکار در برنامه های تولیدی کمک به انسان در کارهای شناسایی (به عنوان مثال ، سیستم شناسایی گونه ها) < uli> کنترل فرایندها (به عنوان مثال ، یک روبات صنعتی) تشخیص رویدادها (به عنوان مثال ، نظارت بصری) تعامل (به عنوان مثال ، ورودی به دستگاه برای تعامل کامپیوتر و انسان) مدلسازی اشیاء/محیط ها (به عنوان مثال g ، تجزیه و تحلیل تصویر پزشکی) ناوبری (به عنوان مثال ، وسیله نقلیه خودران) سازماندهی اطلاعات (به عنوان مثال ، فهرست بندی پایگاه های داده تصاویر و توالی تصاویر)

کامپیوتر پایتون OpenCV چشم انداز

گری برادسکی OpenCV را در Intel در سال 1999 راه اندازی کرد. در حالی که از گستره ای از زبان ها مانند C ++ ، Python و موارد دیگر پشتیبانی می کند ، و OpenCV-Python یک API برای OpenCV است که قدرت پایتون و OpenCV را آزاد می کند API C ++ به یکباره.

برای پایتون ، این کتابخانه پیوندهایی با هدف حل مشکلات بینایی رایانه است. این کتابخانه از NumPy استفاده می کند و تمام ساختارهای آرایه آن به آرایه های NumPy تبدیل می شوند. این بدان معناست که ما می توانیم آن را به راحتی با کتابخانه های دیگر مانند SciPy و Matplotlib (که از NumPy استفاده می کنند) ادغام کنیم.

a. نصب OpenCV در Python

قبل از نصب OpenCV ، مطمئن شوید که Python و NumPy را بر روی دستگاه خود نصب کرده اید.

می توانید چرخ OpenCV را از اینجا (غیر رسمی) بارگیری کنید ، بنابراین شما با DLL Hell مواجه نشوید:

https://www.lfd.uci.edu/~gohlke/pythonlibs/#opencv

سپس ، می توانید این فایل را با استفاده از pip:

pip install [path_of_wheel_file]

ب. وارد کردن OpenCV در پایتون

رفتن به IDLE و وارد کردن OpenCV:

>>> وارد کردن cv2

همچنین می توانید بررسی کنید که کدام نسخه را دارید:

>>> cv2 .__ نسخه__

'3.4.3'

Python Computer Vision - کار با تصاویر

اکنون که ما با موفقیت نصب کردیم OpenCV ، بیایید با آن شروع کنیم.

کامپیوتر رایانه پایتون-کار با تصاویر

a. خواندن تصاویر در پایتون

برای خواندن یک تصویر ، ما تابع/متد imread () داخلی را داریم.

>>> img = cv2.imread ('py.jpg' )

توجه داشته باشید که قبل از این ، ما به فهرست راهنمای این تصویر منتقل شده ایم.

ما همچنین می توانیم یک مقدار برای یک پرچم ، که دومین آرگومان است-

cv2.IMREAD_COLOR- بارگذاری تصویر رنگی بدون توجه به شفافیت موجود (پرچم پیش فرض) cv2. IMREAD_GRAYSCALE- بارگذاری تصویر در مقیاس خاکستری cv2.IMREAD_UNCHANGED- بارگیری تصویری شامل یک کانال آلفا

ما می توانیم اعداد صحیح 1 ، 0 یا -1 را ارسال کنیم.

>>> img = cv2.imread ('py.jpg'، 0) < /oli>

اگر از یک تصویر تصویر نادرست عبور می کنید ، این خطا به ما نمی دهد ، اما print (img) هیچ کدام را به ما نمی دهد.

بیایید ساختارهای داده پایتون را بازبینی کنیم

ب. نمایش تصاویر در پایتون

تابع/متد cv2.imshow () به ما امکان می دهد تصویری را در پنجره ای که متناسب با اندازه تصویر است نمایش دهیم. اولین آرگومان نام پنجره است- یک رشته ؛ دوم تصویر است.

>>> img = cv2.imread ('py.jpg') >>> cv2.imshow ('پایتون' ​​، img)

ما displa را چطور؟تماس با منتظر کلید (0) مفید است. این یک تابع/روش اتصال به صفحه کلید با زمان در میلی ثانیه است. این عملکرد چند ثانیه منتظر یک رویداد صفحه کلید می ماند ، در این صورت ، اگر هر کلیدی را فشار دهیم ، برنامه ادامه می یابد. وقتی صفر را رد می کنیم ، باعث می شویم تا زمان نامحدودی منتظر یک ضربه کلیدی بماند. همچنین می توانیم منتظر کلیدهای خاصی باشیم. cv2.destroyWindow () پنجره خاصی را خراب می کند.

ج. نوشتن تصاویر در پایتون

برای این منظور ما تابع/متد cv2.imwrite () را داریم. آرگومان اول نام فایل است و دومی تصویر ذخیره شده است.

>>> cv2.imwrite ('pygray.png'، img)

درست

این تصویر را در مقیاس خاکستری با نام "pygray.png" در فهرست فعلی ذخیره می کند. این تصویر در قالب PNG است.

تصاویر پایتون

د نمایش تصاویر با Matplotlib

ما می توانیم این تصویر را با استفاده از Matplotlib نمایش دهیم.

>>> واردات matplotlib.pyplot به عنوان plt >>> plt.imshow (img ، cmap = 'gray'، interpolation = 'bicubic')

>>> plt.xticks ([])، plt yticks ([])

(([] ، ) ، ([] ، ))

>>> plt.show () رایانه پایتون-نمایش تصاویر با Matplotlib

طراحی با OpenCV Python Computer Vision

a. رسم خطوط در پایتون

آیا می توانیم حتی با پایتون ترسیم کنیم؟ بیایید با یک خط ساده شروع کنیم. این مختصات شروع و پایان را می گیرد.

>>> وارد کردن numpy به عنوان np >>> img = np.zeros ((512،512،3) ، np.uint8) >>> cv2.line (img، (0،0)، (511،511)، (255،0،0)، 5) ترسیم خطوط در پایتون

ب. رسم مستطیل ها در پایتون

با متد/تابع () مستطیل می توان یک مستطیل رسم کرد. این قسمت گوشه سمت چپ بالا و گوشه سمت راست پایین مستطیل را می گیرد.

نگاهی به Python Heatmap

>>> cv2.rectangle (img ، (384،0) ، (510،128) ، (0،255،0) ، 3) طراحی مستطیل در پایتون

ج. رسم دایره ها در پایتون

ما برای این کار متد/تابع () را داریم. این مختصات و شعاع را می گیرد.

بیایید در مورد استدلال های تابع Python

>>> cv2.circle بحث کنیم (img، (447،63)، 63، (0،0،255)، -1) طراحی حلقه ها در پایتون

د. رسم بیضی ها در پایتون

ما می توانیم چندین آرگومان را به بیضی () متد () تابع/محل مرکز (x ، y) ، طول محورها ، زاویه ، startAngle و endAngle منتقل کنیم.

>>> cv2.ellipse (img، (256،256)، (100،50)، 0،0،180،255، -1) >>> cv2.imshow ('image'، img) ترسیم بیضی در پایتون.

ه. رسم چند ضلعی در پایتون

روش/تابع () polylines مختصات رئوس را می گیرد.

بیایید فهرست راهنمای پایتون را

>>> pts = np تجدید نظر کنیم. آرایه ([[10،5] ، [50،70] ، [250،360] ، [400،400]] ، np.int32) >>> pts = pts.reshape ((--1،1 ، 2)) >>> cv2.polylines (img، [pts]، True، (0،255،255)) ترسیم چند ضلعی در پایتون

f. قرار دادن متن در تصاویر

در نهایت ، بیایید ببینیم چگونه می توانیم متن را به این تصویر اضافه کنیم.

>>> font = cv2.FONT_HERSHEY_SIMPLEX >>> cv2 .putText (img، 'OpenCV'، (10،500)، font، 4، (255،255،23)، 2، cv2.LINE_AA) >>> cv2.imshow ('image'، img) < /oli> قرار دادن متن در تصاویر

عملیات اساسی روی تصاویر

بیایید این را از طریق یک کد نشان دهیم.

نگاهی به Python OrdedDict

>>> وارد کردن numpy به عنوان np >>> img = cv2.imread ('py.jpg') < oli >>>> cv2.imwrite ('edges_py.jpg'، cv2.Canny (img، 602،315))

درست

بیایید Pythpn عادی عبارات را بازبینی کنیم

>>> cv2.imshow ('edges'، cv2.imread ('edges_py.jpg')) >>> وارد کردن numpy به عنوان np >>> fd = cv2 .CascadeClassifier ('C: \\ Users \\ Ayushi \\ Downloads \\ opencv \\ resources \\ data \\ haarcascades_cuda \\ haarcascade_frontalface_default.xml') >>> img = cv2.imread ( 'mel.jpg') >>> خاکستری = cv2.cvtColor (img، cv2.COLOR_BGR2GRAY) #تبدیل آن به مقیاس خاکستری >>> چهره = fd.detectMultiScale (خاکستری ، 1.3.5) #انجام تشخیص >>> برای (x، y، w، h) در صورت: img = cv2.rectangle (img، (x، y) ، (x+w ، y+h) ، (255،0،0) ، 3) >>> cv2.imwrite ('face_mel.jpg'، img) < p> True

تشخیص چهره ها در دید رایانه ای پایتون

می بینید که این یک مربع آبی رنگ کشیده است uare در اطراف صورت در تصویر حالا ، بیایید سعی کنیم چشم های او را تشخیص دهیم.

تشخیص چشم در رایانه پایتون

در حال حاضر ، آخرین موردی که ما می خواهیم در مورد آن بحث کنیم تشخیص چشم است. ما برای این کار از طبقه بندی Haar نیز استفاده می کنیم.

شما باید Python Web Framework

>>> eye_cascade = cv2.CascadeClassifier ('C: \\ Users \\ Ayushi \\ Downloads \\ opencv \\ منابع \\ داده \\ haarcascades_cuda \\ haarcascade_eye.xml ') >>> img = cv2.imread (' mel.jpg ') >> > خاکستری = cv2.cvtColor (img، cv2.COLOR_BGR2GRAY) >>> eyes = eye_cascade.detectMultiScale (خاکستری ، 1.03،5) >>> برای (سابق ، چشم ، ew، eh) in eyes: img = cv2. rectangle (img، (ex، ey)، (ex+ew، ey+eh)، (0،255،0)، 2) >>> cv2.imwrite ('mel_eyes.jpg'، img)

درست

تشخیص چشم در دید رایانه ای Python

در اینجا ، می توانید ببینید که سه چشم را تشخیص داده است! یکی از آنها لب های اوست به هر حال ، این بارها دقیق است ، ما به طور تصادفی به یکی از تصاویری برخورد کردیم که استثنا را ایجاد می کند. اگر این اتفاق برای شما افتاده است ، در نظرات زیر به ما بگویید.

بنابراین ، همه اینها در آموزش چشم انداز رایانه پایتون بود. امیدوارم توضیحات ما را دوست داشته باشید.

نتیجه گیری - Python Computer Vision

از این رو ، در این آموزش کامپیوتر Python Computer Vision ، ما در مورد معنی Computer Vision در پایتون AI بحث کردیم. همچنین ، ما طراحی با OpenCV ، Detecting Edges و Faces را دیدیم. علاوه بر این ، ما تشخیص چشم را در پایتون Computer Vision آموختیم. آیا این توضیحات برای شما مفید است؟ نظرات خود را در نظرات بیان کنید.

نظرات 0 + ارسال نظر
برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)
ایمیل شما بعد از ثبت نمایش داده نخواهد شد