پایتون

آموزش پایتون_for

مفهوم Loop 

یک حلقه یاLoop  دنباله ای از دستورالعمل است که به طور مداوم تکرار می شود تا شرایط خاصی به دست آید. به عنوان مثال، ما مجموعه ای از اقلام داریم و یک حلقه ایجاد می کنیم تا از طریق آن بتوانیم  تمام عناصر موجود در مجموعه را پیمایش کنیم. حلقه ها در Python می توانند با for یا while  ایجاد شوند.

در این جلسه قراره در مورد حلقه ها بحث کنیم. در ابتدا از for شروع میکنیم :

for روی هر کدام ا آیتم های دنباله ای مثل رشته، لیست و… تکرار میشود. به عبارت دیگر آیتم ها به همان ترتیبی که در دنباله هستند طاهر میشوند. مهمترین مسئله در این حلقه، تعداد دفعات تکرار مشخص است

مثلا کامپیوتر n عدد از کاربر دریافت میکنه و بزرگترین آنها را نمایش میده.

for var in sequence:
   do_statement(s)

حلقه for با string

 

>>> stg=”sufra.ir”
>>> for i in stg:
print(i)

s
u
f
r
a
.
i
r
>>>
نکته

وقتی حلقه for  را اجا میکنیم آیتم ها به هر تعدادی که هستند زیر هم دیگر چاپ میشوند. برای اینکه کنار هم چاپ شوند باید از (“”=print(i,end  استفاده کنیم

 

print(i,end=””) ???

 

end

همانطور که در تصویر بالا مشاهده میکنید end=’\n”  به صورت پیش فرض تعریف شده تا بعد از تایپ  هر آیتم به خط بعدی رفته تا آیتم های دیگر را چاپ کند.

 

stg="sufra.ir"
>>> for i in stg:
 print(i,end=" ")
s u f r a . i r

حلقهfor با list

>>> a = ['python', 'html', 'c++']
 >>> for i in a:
 print(i , len(i))
python 6
 html 4
 c++ 3
 >>>

حلقه for با tuple

T=("A","B","C")
>>> for x in T:
 print(x)
A
 B
 C
 >>> for x in T:
 print(x,end="")
ABC
 >>>

حلقه for با  Dictionary

>>> d = {'x': 1, 'y': 2, 'z': 3}
 >>> for key in d:
 print (key, ":", d[key])
x : 1
 y : 2
 z : 3
>>> data = { "de": "Germany", "sk": "Slovakia", "hu": "Hungary", "ru": "Russia" }
>>> for k, v in data.items():
print("{0} is an abbreviation for {1}".format(k, v))
de is an abbreviation for Germany
 sk is an abbreviation for Slovakia
 hu is an abbreviation for Hungary
 ru is an abbreviation for Russia
 >>>

حلقه for با else

>>> words = ["cup", "star", "monkey", "bottle", "paper", "door"]
>>> for word in words:
print(word)
else:
print("Finished looping")
cup
star
monkey
bottle
paper
door
Finished looping
>>>

دستور else  بعد از تمام شدن حلقه اجرا میشود. ما لیستی از کلمات را با یک حلقه به پیش میبریم. وقتی تکرار شد، پیام “پایان حلقه” را چاپ می کنیم که در داخل بدن قرار دارد و پس از کلمه کلیدی دیگری قرار دارد.

حلقه for با range

 

تابع range لیستی از اعداد ۰-(۱-n) را تولید میکند.

 

>>>
 for i in range(1, 6):
print("Statement executed {0}".format(i))
Statement executed 1
 Statement executed 2
 Statement executed 3
 Statement executed 4
 Statement executed 5
 >>>
>>> for n in range(1, 11):
 print(n, end=' ')
۱ ۲ ۳ ۴ ۵ ۶ ۷ ۸ ۹ ۱۰
 >>> for n in range(0, 11, 2):
 print(n, end=' ')
۰ ۲ ۴ ۶ ۸ ۱۰
 >>>

حلقه for با ایندکس

>>> words = ["cup", "star", "monkey", "bottle", "paper", "door"]  >>> for word, idx in enumerate(words):  print("{0}: {1}".format(word, idx)) 0: cup  1: star  2: monkey  3: bottle  4: paper
  ۵: door  >>>

با استفاده از تابع enumerate عنصر لیست را با ایندکس آن چاپ کنیم.

حلقه for  تو  در تو

 

تا اینجا ما  مثالهای ما تک بعدی   با استفاده  از یک حلقه بوده است. برای استفاده از مثالهای چند بعدی مثلا ماتریس ها، بیشتز از یک حلقه  باید استفاده میکنیم. برای ماتریس های دو بعدی که نیاز به سطر و ستون  داریم از دو حلقه استفاده میکییم.

>>> nums = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
>>> for i in nums:
for e in i:
print(e, end=' ')
print()
۱ ۲ ۳ 
۴ ۵ ۶ 
۷ ۸ ۹

حلقه for  با zip

>>> words1 = ["cup", "bottle", "table", "rock", "apple"]
 >>> words2 = ["trousers", "nail", "head", "water", "pen"]
 >>>
 for w1, w2 in zip(words1, words2):
 print(w1, w2)

cup trousers bottle nail table head rock water apple pen >>>

حلقه for  و break

برنامه به محض رسیدن  به break از حلقه خارج میشود.

import random
 import itertools
for i in itertools.count():
val = random.randint(1, 30)
print(val)
if (val == 22):
 break
۱۳
 ۸
 ۱۸
 ۶
 ۲۰
 ۲۴
 ۱۳
 ۲۲

 

حلقه for  با continue

برنامه با  شرطی که گذاشتیم وقتی به continue رسید آن را اجرا نمیکند و حلقه کار خود را ادامه میدهد

num = 0
for num in range(20):
num = num + 1
if (num % 2) == 0:
continue
print(num, end=' ')
print()
۱ ۳ ۵ ۷ ۹ ۱۱ ۱۳ ۱۵ ۱۷ ۱۹

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


برنامه های این  دوره از  پردازش تصویر، با پایتون ۲٫۷ هست. کتابخانه های مورد نیاز به صورت زیر می باشد:

۱- Numpy
۲- Matplotlib
۳-opencv


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

Numpy

برای کار با اعداد، آرایه ها و ماتریس ها از کتابخانه ی numpy استفاده می شود. در پردازش تصویر، کار با تصاویر هم نوعی کار با ماتریس ها  می باشد.

 برای نصب این کتابخانه، وارد آدرس C:\Python27\Scripts(یا هر درایوی که پایتون را در آن نصب کرده ایم)  می شویم. کلید شیفت را پایین نگه داشته و در قسمتی خالی از این مکان کلیک راست کرده و گزینه open command را انتخاب می کنیم سپس خط زیر را تایپ می کنیم :

pip install numpy

با زدن اینتر اگر به اینترنت متصل باشیم به راحتی این کتابخانه نصب می شود. بنابراین کتابخانه های زیر را به همین صورت نصب میکنید

Matplotlib

برای رسم نمودار ها بیشتر کاربرد دارد. قبل از نصب این کتابخانه اول دو کتابخانه زیر را به عنوان پیش نیاز نصب می کنیم:

pip install python-dateutil
pip install pyparsing
pip install matplotlib
</span>

opencv

از لینک زیر opencv را دانلود کرده و از حالت فشرده خارج می کنیم. 

https://github.com/opencv/opencv/releases/download/3.3.0/opencv-3.3.0-vc14.exe

سپس وارد مسیر C:\opencv\build\python\2.7\x86 شده و فایل موجود را کپی کرده و در مسیر C:\Python27\Lib\site-packages قرار می دهیم. 

نصب کتابخانه های مورد نیاز پرازش تصویر تموم شد. برای مطمئن شدن از نصب صحیح این کتابخانه ها، وارد شل پایتون شده و آنها را import  می کنیم. نباید خطایی نمایش داده شود. 

Numpy-Matplotlib-opencv

Numpy-Matplotlib-opencv

برای اطلاع از نسخه opencv دستور زیر را در شل پایتون وارد کنید:

 

 import cv2
cv2.__version__
 '۳٫۲٫۰'


۱-پردازش تصویر با پایتون-OpenCV
۲-آموزش نصب pip در پایتون
۳-
کتابخانه های مورد نیاز پردازش تصویر
۴ – خواندن و نمایش فرمت تصویر در پایتون
۵- نمایش تصویرRGB با Matplotlib و تابع تبدیل ()cvtColor در OpenCv

۶-تغییر فضاهای رنگ- opencv
۷-تقسیم و ادغام کانال های تصویری با opencv

 

🆔@image_Process
🌐https://t.me/image_Process



آموزش قبلی 

آموزش بعدی

آموزش نصب pip در ویندوز

۱-آموزش نصب pip
۲- متغیرهای محیطی


آموزش نصب pip

 

سلام. در این آموزش قرار است درابتدا، pip را دانلود و نصب میکنیم. سپس در مورد متغیر های محیطی توضیحی کم می دهیم.

دانلود و نصب pip

 

برای نصب کتابخانه های پایتون با استفاده از  pip، ابتدا وارد  اینجا می شویم،  سپس get-pip.py را دانلود می کنیم. برای نصب مراحل زیر را انجام دهید:

 

  1. فایل get-pip.py را دانلود می کنیم.
  2. مکانی که دانلود شده را می یابیم.
  3. در محل دانلود شده ابتدا کلید shif را پایین نگه داشته و  سپس open command را انتخاب می کنیم.
  4. نام فایل را در cmd نوشته و اینتر را می زنیم تا  pip را نصب کند.

 

آموزش-نصب-pip

 

متغیرهای محیطی

 

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

 

بعد از نصب باید  سیستم  بفهمد که ما pip را نصب کردیم. در ادامه مراحل زیر را به ترتیب انجام می دهیم:

 

  1. بر روی my computer کلیک راست می کنیم.
  2. از سمت چپ advanced system settings  را انتخاب می کنیم.
  3. پنجره ای باز میشود که از بین تب های آن Advanced را انتخاب، و دکمه  Environment Variable می زنیم.
  4.  این مسیر  system variable–>path–>Edit را طی میکنیم.
  5. سپس با باز شدن پنجره  Edit System Vriable، از قسمت  Variable value، به انتهای آخرین آدرس رفته، یک ; میگذاریم و آدرس محل نصب pip را وارد میکنیم.

 

Environment variable

Environment variable

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

 

pip3

pip

بعد از نصب pip، به راحتی میتوانید کتابخانه های پایتون را از این طریق نصب کنید.




۱-پردازش تصویر با پایتون-OpenCV
۲-آموزش نصب pip در پایتون
۳-
کتابخانه های مورد نیاز پردازش تصویر
۴ – خواندن و نمایش فرمت تصویر در پایتون
۵- نمایش تصویرRGB با Matplotlib و تابع تبدیل ()cvtColor در OpenCv

۶-تغییر فضاهای رنگ- opencv
۷-تقسیم و ادغام کانال های تصویری با opencv

 

 

🆔@image_Process
🌐https://t.me/image_Process

 


آموزش قبلی


آموزش بعدی

 

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

۱- opencv
۲- بینایی رایانه ای
۳-The OpenCV Python Interface


OpenCV


 اپن سی وی (Open Source Computer Vision Library)، کتابخانه ی  متن باز  بینایی کامپیوتر، تحت مجوز BSD منتشر شده است و از این رو برای استفاده دانشگاهی و تجاری رایگان است.

OpenCV در سال ۱۹۹۹ توسط Gary Bradsky در اینتل بنا نهاده و اولین بار در سال ۲۰۰۰ منتشر شد. در حال حاضر  OpenCV،  بسیاری از الگوریتم های مربوط به بینایی  کامپیوتر و یادگیری ماشین را پشتیبانی می کند و روز به روز گسترش می یابد. OpenCV از طیف گسترده ای از زبان های برنامه نویسی مانند C، Python، Java و غیره پشتیبانی می کند و در سیستم عامل های مختلف از جمله Windows، Linux، OS X، Android و iOS در دسترس است.

OpenCV  برای بهبود محاسبات و برنامه های بی درنگ طراحی شده است .

 

بینایی رایانه‌ای


بینایی رایانه‌ای Computer vision) یا بینایی ماشین ( Machine vision) یکی از شاخه‌های علوم کامپیوتر است که شامل روش‌های مربوط به دستیابی تصاویر، پردازش، آنالیز و درک محتوای آن‌ها است. معمولاً این پردازش‌ها، تصاویر تولید شده در دنیای واقعی را به عنوان ورودی دریافت و داده‌هایی عددی یا سمبلیک را به عنوان خروجی تولید می‌کنند. یکی رویه‌های توسعهٔ این شاخه بر اساس شبیه‌سازی توانایی بینایی انسان در رایانه است.

 

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

python-image-processing

python-image-processing

The OpenCV Python Interface


OpenCV  یک کتابخانه به زبان  c++،  همراه ماژولهای زیادی که در زمینه بینایی کامپیوتر پوشش دهنده است، میباشد.

OpenCV-Python یک کتابخانه پایتون است که برای حل مشکلات بینایی کامپیوتر طراحی شده است. در واقع  از پایتون به عنوان رابطی برای استفاده از این کتابخانه استفاده میشود. علاوه بر C ++ (و C)، پشتیبانی از پایتون به عنوان یک زبان برنامه نویسی ساده تر از طریق یک رابط پایتون در بالای کد پایه C ++ وجود دارد. در واقع پایتون به عنوان یک اسکریپت بر روی سی ++ سوار میشود. 

پایتون یک زبان برنامه نویسی هدف است که توسط Guido van Rossum طراحی و عمدتا به دلیل سادگی و خوانایی بالا، بسیار محبوب شده است. پایتون، برنامه نویس را قادر می سازد تا ایده هایش را در خطوط کمتری بیان کند. در مقایسه با زبانهایی مانند C++ / C ، پایتون کندتر است.  پایتون،  به راحتی می تواند به وسیله C / C ++ گسترش یابد، و ما را قادر می سازد تا کد C / C ++ را به صورت محاسباتی پرقدرت بنویسیم و پلاگین های پایتون را ایجاد کنیم که می تواند به عنوان ماژول های پایتون استفاده شود.

این  موضوع  دو مزیت دارد:

۱٫ کد پایتون  به اندازه C / C ++سریع  میشود(چون  C ++ واقعی در پس زمینه،  کار می کند) .

۲٫  استفاده از کد پایتون نسبت به C / C ++  آسان تر می شود.

OpenCV-Python از کتابخانه Numpy استفاده می کند که یک کتابخانه بسیار کارآمد برای عملیات عددی با سینتکس  MATLAB است. تمام ساختارهای آرایه OpenCV به آرایه های Numpy تبدیل می شوند. این باعث می شود که ادغام با سایر کتابخانه هایی که از Numpy استفاده می کنند راحت تر باشد  مانند SciPy و Matplotlib.



۱-پردازش تصویر با پایتون-OpenCV
۲-آموزش نصب pip در پایتون
۳-
کتابخانه های مورد نیاز پردازش تصویر
۴ – خواندن و نمایش فرمت تصویر در پایتون
۵- نمایش تصویرRGB با Matplotlib و تابع تبدیل ()cvtColor در OpenCv

۶-تغییر فضاهای رنگ- opencv
۷-تقسیم و ادغام کانال های تصویری با opencv

 

🆔@image_Process
🌐https://t.me/image_Process

 


آموزش بعدی