من ربات ترجمیار هستم و خلاصه مقالات علمی رو به صورت خودکار ترجمه میکنم. متن کامل مقالات رو میتونین به صورت ترجمه شده از لینکی که در پایین پست قرار میگیره بخونین
۵ کتابخانه نهایی پایتون برای پردازش تصویر
منتشر شده در towardsdatascience به تاریخ ۲۹ جولای ۲۰۲۱
لینک منبع 5 Ultimate Python Libraries for Image Processing
پردازش تصویر پدیده دستکاری یک تصویر برای استخراج ویژگیها از آن است.
در دنیای امروز بینایی کامپیوتری و یادگیری عمیق، الگوریتمهای مختلف برای پردازش تصویر به شدت برای تشخیص لبه، شناسایی، طبقهبندی از مجموعه داده تصاویر مورد استفاده قرار میگیرند.
گاهی اوقات این الگوریتمها به فریمهای ویدئویی نیز اعمال میشوند تا ویژگیها را از آنها استخراج کنند.
در مقاله امروز، نگاهی به ۵ کتابخانه خوب پایتون میاندازیم که ممکن است به شما کمک کنند تا دستکاری تصاویری مانند کراپ کردن، مقیاس گذاری خاکستری و غیره را انجام دهید.
۱. کتابخانه OpenCV
کتابخانه OpenCV یکی از محبوبترین و پراستفاده ترین کتابخانههای پردازش تصویر و بینایی کامپیوتر است. این کتابخانه شفاهی میتواند با بسیاری از زبانهای برنامهنویسی مانند C، C + +، پایتون، جاوا استفاده شود اما کتابخانه الزامات پایتون محبوبترین کتابخانه است.
نه تنها دستکاری تصویر بلکه الگوریتمهای پیچیده یادگیری عمیق مربوط به بینایی کامپیوتر نیز میتوانند به راحتی با استفاده از این کتابخانه پیادهسازی شوند. بهترین چیز در مورد CV باز این است که آن یک کراس-پلتفرم است و میتواند با دستگاههای تلفن همراه نیز کار کند.
نصب
pip install opencv-python
انجام یک Gaussian blur بر روی یک تصویر. ما از Colab استفاده خواهیم کرد زیرا در آنجا نیازی به تنظیم محیط نداریم - همه چیز در اینجا از قبل راه اندازی شده است.
اول از همه، بیایید بستههای لازم را وارد کنیم. اگرچه Colab از دستور cv2.imsh () پشتیبانی نمیکند-اما ما یک جایگزین برای آن داریم.
import cv2import numpy as npimport urllibimport urllib.request as urfrom google.colab.patches import cv2_imshow
اکنون، اجازه دهید یک تصویر را از اینترنت بارگذاری کرده و چند فیلتر اعمال کنیم.
resp = ur.urlopen("https://thumbor.forbes.com/thumbor/960x0/https%3A%2F%2Fspecials-images.forbesimg.com%2Fdam%2Fimageserve%2F1068867780%2F960x0.jpg%3Ffit%3Dscale")
image = np.asarray(bytearray(resp.read()), dtype="uint8")
im = cv2.imdecode(image, cv2.IMREAD_COLOR)
blur = cv2.GaussianBlur(im, (5,5),0)
cv2_imshow(blur)
۲. کتابخانه SimpleCV
کتابخانه SimpleCV یک چارچوب پایتون است که از کتابخانههای دید کامپیوتری مانندOpenCV استفاده میکند. استفاده از این کتابخانه بسیار ساده و آسان است و میتواند واقعا برای نمونهسازی سریع مفید باشد.
این کتابخانه میتواند به طور خاص برای کسانی که دانش مفاهیم مختلف دستکاری تصویر مانند مقادیر ویژه، فضاهای رنگی، و عمق بیت را ندارند، مفید باشد.
نصب
pip install SimpleCV
این کتابخانه میتواند انتخاب بهتری برای بازی با وظایف تشخیص اشیا باشد. شما میتوانید با استفاده از این کتابخانه کارهای جالبی مثل تشخیص اینکه آیا یک ماشین پارک شدهاست یا نه را پیدا کنید.
۳. کتابخانه Pillow
پیلو یک کتابخانه پردازش تصویر برای پایتون است که از PIL یا کتابخانه تصویر سازی پایتون گرفته شدهاست. اگرچه این تکنیک به اندازهopenCV قدرتمند و سریع نیست، اما میتواند برای دستکاری تصویر ساده مانند کراپ کردن، تغییر اندازه، چرخش و خاکستری کردن تصویر مورد استفاده قرار گیرد. مزیت دیگر این روش این است که می توان از آن بدون«NumPy» و «Matplotlib» استفاده کرد.
نصب
pip install pillow
برای خواندن یک تصویر در PIL میتوانیم از این استفاده کنیم:
from PIL import Imageim = Image.open(r"C:\Users\System-Pc\Desktop\image1.jpg")im.show()
۴. کتابخانه Mahotas
ماهوتاس یک کتابخانه پایتون برای پردازش تصویر و دید کامپیوتری است که در اصل برای اطلاعات بیوتصاویر طراحی شدهاست. اما دیگر وظایف بینایی کامپیوتر نیز میتوانند با استفاده از آن انجام شوند. این زبان در اصل در C + + نوشته شدهاست که آن را بسیار سریع میسازد و هیچ وابستگیهایی به جز NumPy ندارد.
نصب
pip install mahotas
سیاه سفید کردن یک تصویر با استفاده از ماهوتاس:
import mahotas
import mahotas.demos
import numpy as np
from pylab import imshow, gray, show
from os import path
photo = mahotas.demos.load('luispedro', as_grey=True)
photo = photo.astype(np.uint8)
gray()
imshow(photo)
show()
در نهایت، پس از اجرای کد-میتوانیم نتیجه زیر را به دست آوریم.
۵. کتابخانه pgmagick
کتابخانهPgmagick یک پوشش پایتون برای GraphicsMagick است که مجموعهای از ابزارها و کتابخانهها برای دستکاری تصاویر است. از بیش از ۸۸ فرمت تصویر پشتیبانی میکند. به غیر از کار پردازش تصویر، می توان از آن در برنامههای کاربردی وب برای ایجاد تصاویر جدید استفاده کرد.
نصب
pip install pgmagick
برای استخراج لبه از یک تصویر:
from pgmagick.api import Imageimg = Image(‘lena.jpg’) #Your image path will come hereimg.edge(2)img.write(‘lena_edge.jpg’)
نتیجهگیری
اگرچهOpenCV مهمترین کتابخانه پردازش تصویر است که ما قصد داریم در آینده از آن استفاده کنیم، داشتن کمی دانش در مورد دیگر کتابخانههای پردازش تصویر قطعا ایده خوبی خواهد بود.
تمام این کتابخانهها میتوانند روند کار شما را با پیادهسازی سادهتر برای عملکردهای خاص آسانتر کنند.
برای اینکه بیشتر در مورد این کتابخانهها بدانید، همیشه میتوانید اسناد رسمی را دنبال کنید و همچنین با جامعه منبع باز که این کتابخانهها دارند مشورت کنید.
این متن با استفاده از ربات ترجمه مقالات علم داده ترجمه شده و به صورت محدود مورد بازبینی انسانی قرار گرفته است.در نتیجه میتواند دارای برخی اشکالات ترجمه باشد.
مقالات لینکشده در این متن میتوانند به صورت رایگان با استفاده از مقالهخوان ترجمیار به فارسی مطالعه شوند.
مطلبی دیگر از این انتشارات
مغناطیس به ناپدید شدن الکترونها در ابررساناهای با دمای بالا کمک میکند
مطلبی دیگر از این انتشارات
کرونا میتواند همانند ترکیبی از سارس و ایدز باعث آسیب غیرقابل برگشت به ریه شود
مطلبی دیگر از این انتشارات
کیفیت چقدر در فرآیند ترجمه مهم است؟