`
12
DASTURIY MAHSULOTLARNI YARATISH VA UNING INNOVATSION
ISTIQBOLLARIOPENCV KOMPYUTER KO’RISH KUTUBXONASI
Rustamov Alisher Bahodirovich
Axborot texnologiyalari va menejment universiteti
“Axborot texnologiyalari” kafedrasi dotsenti,
i.f.f.d., (PhD), dotsent. Tel: 99 330-81-88
Xodiyeva Shohsanam Baxtiyor qizi
Axborot texnologiyalari va menejment universiteti magistranti
Tel: 94 457-89-94
https://doi.org/10.5281/zenodo.15544836
OpenCV (opensource computer vision) - bu ochiq manbali kompyuter ko`rishdir, ya’ni
dasturlash tillarida ishlatiladigan ochiq kodli kutubxona. OpenCV Intel kompaniyasida 1999
yilda Gary Bradsky tomonidan ishlab chiqilgan va birinchi versiyasi 2000 yilda paydo bo'lgan.
Hozirgi kunda OpenCV kutubxonasi zamonaviy kompyuter ko`rish bilan bog'liq ko'plab
algoritmalarni o'z ichiga olgan, 2500 dan ortiq optimallashtirilgan algoritmlarga ega va kun
sayin rivojlanib bormoqda. Bu algoritmlar tasvirdagi insonlar yuzlarini va ob'ektlarni
aniqlashda, videolarda inson harakatlarini hamda kamera tasviridagi harakatlarni kuzatib
borishda, harakatlanuvchi moslamalarni kuzatishda, ob'ektlarning 3D modellarini chiqarishda,
rasm va shunga o`xshash tasvirlarni ma'lumotlar bazasidan qidirib topishda, ko'z harakatlarini
kuzatishda keng foydalanib kelinmoqda. Bu kutubxonadan Google, Yahoo, Microsoft, Intel, IBM,
Sony, Honda, Toyota kabi mashhur kompaniyalar foydalanmoqda.
OpenCV kutubxonasi birga ishlaydigan dasturlash tillari hamda operatsion tizimlar
quyidagilardan iborat.
Dasturlash tillari:
1.
Python
2.
C++
3.
Java
4.
MATLAB (muhitida ham)
Operatsion tizimlar:
1.
Windows
2.
Linux
3.
Android
4.
Mac
Python – bu dasturlash tili bo`lib, u C++ ga nisbatan sekin ishlasada dastur kodlarni kam
yozgan holda dastur yaratish mumkinligi bilan qulay hisoblanadi. Uning eng yaxshi
yutuqlaridan biri, C va C++ dasturlash tillari bilan oson bog`lanadi. Python tilida dastur
yaratayotganda murakkab hisob-kitob qismlarini C++ da yozgan holda Pythonga komponenta
sifatida qo`shib foydalanish mumkin.
OpenCVdan foydalanishga misol sifatida Python dasturlash tiliga bog`lab dastur yaratib
ko`ramiz. Buning uchun quyidagi amallar ketma-ketligini bajaramiz:
1.
Python tili kompilyatorini kompyuterimizda foydalanayotgan operatsion tizim tipiga mos
ravishda (x32/x86, x64) yuklab olamiz.
2.
Yuklab olingan kompilyatorimizni o`rnatish uchun ishga to`shiramiz. Bunda tegishli oyna
chiqqanida “Add Python 3.7.1 to PATH” ko`rsatmasini belgilab, “Install now” buyrug`ini
tanlaymiz.
3.
O`rnatib bo`lingandan keyin tegishli oynadan “Close” tugmasini tanlaymiz va tekshirib
kurish uchun Win+R tugmalarini bosib, consolga “py” buyrug`ini yozamiz.
`
13
4.
Numpy va Matplotlib kutubxonalarini buyruq (python -m pip install --user numpy scipy
matplotlib ipython jupyter pandas sympy nose) orqali cmdga yozish bilan o’rnatib olamiz.
NumPy
- Python uchun ochiq kodli kutubxona bo'lib, umumiy matematik va raqamli
operatsiyalar bajaruvchi tayyor funksiyalar jamlanmasidir. U yuqori darajadagi paketlardan
tashkil topgan, MatLab funksiyalariga nisbatdan funksionalligi yuqori. NumPy katta massivlar va
matritsalarni boshqarish uchun asosiy usullarni taqdim etadi.
Matplotlib
- Python dasturlash tili va Numpy raqamli matematik kutubxonasi uchun
mo`ljallangan kutubxonadir. U Tkinter, wxPython, Qt yoki GTK+ kabi vositalarini qo'llashda
ob'ektlardan foydalanish uchun ishlab chiqilgan kutubxonadir.
5.
OpenCV kutubxonani “pip install opencv-python” buyruq orqali cmdga yozish bilan
o’rnatib olamiz.
Python va OpenCV compyuterimizga o`rnatildi. Endi tekshirib ko`rish uchun quyidagi ketma-
ketlikni bajargan holda dastur tuzib ko`ramiz.
1.
Kompyuterimizda
katalog
(“myproject”)
ochamiz.
Katalogimiz
ichiga
“'C:/Users/User/Desktop/ATMU” rasmni joylashtiramiz va “.py” formatdagi fayl ochamiz
(bizda fayl nomi “myprogram”).
2.
“myprogram” faylini “Edit with IDLE” kompilyatorida ochib quyidagi dastur kodini
yozamiz.
# kerak bo`ladigan kutubxonalarni yuklab olish
import
cv2
import
numpy
as
np
from
matplotlib
import
pyplot
as
plt
# rasmni yuklab olish
# cv2.IMREAD_GRAYSCALE - rasmni kul ranga o`zgartirish
img = cv2.imread(
'C:/Users/User/Desktop/ATMU.jpg'
)
# rasmni oynada ochish
cv2.imshow(
'image'
, img)
cv2.waitKey(
0
)
cv2.destroyAllWindows()
img = cv2.imread(
'C:/Users/User/Desktop/ATMU.jpg'
,
cv2.IMREAD_GRAYSCALE)
import
cv2
# Rasmni oq-qora (grayscale) rejimda o'qish
img = cv2.imread(
'C:/Users/User/Desktop/ATMU.jpg'
,
cv2.IMREAD_GRAYSCALE)
# Rasmni oynada ko'rsatish
cv2.imshow(
'Oq-qora rasm'
, img)
# Tugma bosilishini kutish
cv2.waitKey(
0
)
# Oynalarni yopish
cv2.destroyAllWindows()
3.
Ishga tushirish uchun “Edit with IDLE” menyular panelidan Run->Run Module tugmasini
tanlash orqali amalga oshiramiz.
`
14
1-rasm. Ob’yektning asl holdagi tasviri.
2-rasm. Ob’yektning rangsiz tasviri.
Matni yuqorida keltirilgan dastur yordamida OpenCV kutubxonadan foydalangan holda
1-rasmdagi ko`rinishdan 2-rasmdagi ko`rinish hosil qilindi.
References:
Используемая литература:
Foydalanilgan adabiyotlar:
1.
Richard L., Halterman. Learning to program with Python, 2011.
2.
Joseph Howse. OpenCV Computer Vision with Python, 2013
3.
4.
https://www.python.org/downloads/release/python-371/
5.
https://pythonprogramming.net/loading-images-python-opencv-tutorial/