یادگیری و آموزش هوش صنوعی
یادگیری و آموزش هوش صنوعی
خواندن ۳ دقیقه·۹ ماه پیش

آشنایی با پردازش تصویر و کتابخانه های برتر در پایتون

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

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


پردازش تصویر چیست؟

همانطور که از نامش پیداست، پردازش تصویر به معنای تجزیه و تحلیل و استخراج اطلاعات از داده های عکسی که در اختیارمان گذاشته شده می باشد. چیزی که باید بدانیم این است که خروجی این پروسه لزوما تصویر نیست و می تواند تمام ویژگی های مربوط به آن تصویر باشد. به زبان ساده تر، به استفاده از الگوریتم های کامپیوتری جهت انجام پردازش تصویر، image processing گفته می شود.

الگوریتم های مختلفی برای انجام این کار وجود دارند. همچون:

  • 1. Morphological Image Processing
  • 2. Gaussian Image Processing
  • 3. Fourier Transform in image processing
  • 4. Edge Detection in image processing
  • 5. Wavelet Image Processing

پردازش تصویر با پایتون

تاکنون ابزارهای متنوعی برای پردازش تصویر با پایتون معرفی شده‌ اند. این دسته از ابزارها، کتابخانه ‌ها (Libraries) و بسته‌ های (Packages) برنامه‌ نویسی، امکانات بسیار متنوع و مفیدی برای تبدیل تصاویر (Image Transformation)، فهمیدن اطلاعات موجود در این داده‌ ها و به طور کلی، دستکاری و پردازش تصاویر در اختیار کاربران و برنامه ‌نویسان قرار می‌ دهند. به عبارت دیگر، ابزارهای پردازش تصویر با پایتون به کاربران این امکان را می‌ دهند تا به شکل ساده تری داده‌ های تصویری را تحلیل و اطلاعات بامعنی از آن‌ ها استخراج کنند.

از جمله رایج ترین فرایند های پردازش تصویر با پایتون که توسط ابزارها و کتابخانه ‌های این زبان برنامه‌ نویسی قابل اجرا هستند، می ‌توان به مواردی نظیر برش (Cropping)، برعکس کردن (Flipping)، چرخاندن (Rotating)، قطعه‌بندی تصویر (Image Segmentation)، دسته‌بندی تصویر (Image Classification)، استخراج ویژگی (Feature Extraction)، ترمیم تصاویر (Image Restoration) و بازشناسی تصویر (Image Recognition) اشاره کرد.

در ادامه با سه ابزار و کتابخانه ی پرکاربرد جهت دستکاری و پردازش تصویر با پایتون آشنا خواهیم شد.

کتابخانه scikit-image

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

کتابخانه Numpy

کی از مهم ‌ترین کتابخانه‌ های توسعه داده شده برای کاربردهای پردازش تصویر با پایتون نیز محسوب می ‌شود که به طور رایگان در دسترس کاربران و برنامه‌ نویسان قرار گرفته شده است. به طور کلی، تصویر، یک آرایه استاندارد قابل تعریف توسط کتابخانه Numpy محسوب می‌ شود که شامل پیکسل ‌های متناظر با نقاط داده‌ ای خواهد بود. بنابراین، با استفاده از عملیات پایه ‌ای تعریف شده در Numpy نظیر بخش‌بندی (Slicing)، پوشش گذاری (Masking)، شاخص گذاری چندگانه (Fancy Indexing) و سایر موارد، کاربر قادر خواهد بود تا مقادیر پیکسل‌های یک تصویر را تغییر دهد.

کتابخانه OpenCV-Python

کتابخانه OpenCV که مخفف Open Source Computer Vision Libraryاست، یکی از پراستفاده ‌ترین کتابخانه ‌های برنامه‌ نویسی برای کاربردهای بینایی کامپیوتر (Computer Vision) محسوب می‌شود. کتابخانه OpenCV-Python، واسط برنامه‌نویسی کاربردی (API) برای کتابخانه OpenCV در زبان پایتون محسوب می ‌شود. این کتابخانه نه تنها از سرعت بسیار بالایی برخوردار است (زیرا کدهای پیاده‌سازی آن توسط زبان C و C++‎ نوشته شده است)، بلکه کد نویسی برنامه‌ های کاربردی مرتبط با پردازش تصویر با پایتون و به‌ کاراندازی آن‌ ها را تسهیل می‌ بخشد.


منابع:

https://neptune.ai/blog/image-processing-python

https://blog.faradars.org/image-processing-in-python

پردازش تصویرپایتون
هوش مصنوعی یک علم پیشرو در صنعت و آموزش است. این علم میتواند باعث رشد و پیشرفت زندگی انسان ها به صورت چشمگیری بشود. پس آموزش و یادگیری این علم برای همه انسان ها ضروری و مهم است.
شاید از این پست‌ها خوشتان بیاید