
212
OPEN CV KUTUBXONASIDA TASVIRLARGA RANG MODELLARI BILAN ISHLOV
BERISH
Tojiyev Ma‘ruf Ruzikulovich
Oʻzbekiston Milliy universitetining Jizzax filiali tayanch doktorantri
Shirinboyev Ravshan Shirinboy oʻgʻli
Oʻzbekiston Milliy universitetining Jizzax filiali magistranti
Sulaymonova Matluba Eshmurot qizi
Abdulla Qodiriy nomidagi Jizzax Davlat Pedogogika institute magistranti
Annotatsiya:
Tasvirlarga raqamli ishlov berishda rang modellaridan foydalanish juda
ham koʻp imkoniyatlarni ochib beradi. Ushbu maqolaqa rang modellari va ularning qurilma va
vositalarida qoʻllanilishi haqida yoritilib oʻtildi. Python dasturlash tilida Open CV kutubxonasi
yordamida rang modellari bilan amaliy ish bajarildi.
Kalit soʻzlar:
rang modellari, piksel,
ikkilik tasvir, RGB, CMYK, YUV, HSL, HSB (HSV).
Rang inson koʻzlarida hosil boʻladi. Bunda inson miyasi yengil vizual jarayonni boshdan
kechirad. Biz yorugʻlikni vizual ravishda koʻramiz. Yorugʻlik optik xususiyatga ega boʻlib,
elektromagnit toʻlqinlarning turli diapazonida turli ranglar ishlab chiqariladi.
Rang modeli bu rangni tavsiflash uchun raqamli xususiyatlar toʻplamining ishlatiladigan
matematik model hisoblanadi. Rang modellari odatda ikkita toifaga boʻlinadi: qurilmaga bogʻliq
va qurilmaga bogʻliq boʻlmagan [1].
Qurilmaga bogʻliq boʻlgan modelni oʻrganib chiqadigan boʻlsak bunda biz RGB
modelini tanlab olamiz. RGB rang modelining qiymatlari suyuq kristalli ekranda uch ta qiymatli
rangli diod kuchlanishini bilan hosil qilinadi. Ushbu qiymatlar toʻplami turli xil qurilmalarda
turlicha namoyon boʻladi ya‘ni ranglar bir xil boʻlmasligi mumkin. Masalan, printer qurilmasi
CMYK modeliga asoslangan boʻlishi kerak. Rang modellari bilan bogʻliq boʻlgan qurilmalar
modellariga: RGB, CMYK, YUV, HSL, HSB (HSV), YCBCR va boshqalar kiradi. Bunday
rangli modellar asosan displey qurilmasi, maʻlumotlarni uzatish va ishlov berish uchun
ishlatiladi. Eng keng tarqalgan modellardan biri bu RGB modelidir. RGB rang modeli uchta rang
qiymatlarini oʻz ichiga oladi.
RGB model
Tasvirning RGB modeli boʻyicha shakllanishi uchta
komponent asosida namoyon boʻladi. Bular RGB (Red, Green,
Blue) qizil, yashil va koʻk rang komponentalaridan iboratdir
.
Monitordan RGB yuborilganda, uchta tasvir aralashgan holda
sintetik rangli tasvir ekranda hosil boʻladi. RGB tasvirlarning
har biri qizil, yashil va koʻk tasvirlar 8 bitli tasvirlardir [2].
Bunday tasvir pikselining har bir RGB rangi 24 bit
chuqurlikdagi tasvirni shakllantradi. RGB tasvirning 24 bitli
koʻrinishida umumiy soni (2
8
)
3
= 16777216 ranglar hosil boʻladi.
Quyidagi rasmda RGB modelning kub sxemasi berilgan[2].
CMY / CMYK model
Rangli pigmentlarni qogʻozga joylashtirish uchun koʻplab qurilmalar, masalan, rangli
printerlar va nusxa koʻchirish qurilmalari CMY (Cyan, Magenta, Yellow) (moviy, qizil, sariq)
model asosida kiritishi kerak boʻladi. Agarda maʻlumot RGB model koʻrinishida kiritiladigan
boʻlsa u holda uni CMY modelga quyidagicha almashtirish bajariladi.

213
CMYK (Cyan, Magenta, Yellow, Black) rang modeli bosma sanoati uchun qoʻllaniladi.
CMYK (Cyan,Magenta,Yellow,Black) Moviy,Pushti,Sariq,Qora ranglar uchun qisqartmalaridir.
CMYK - bu toʻrtta qayta ishlangan rang aralashmasi sifatida barcha ranglarni tasvirlaydigan rang
modeli. CMYK rangli chop etishda ishlatiladigan standart rang modeldir. Bu modelda toʻrtta
asosiy rangdan foydalanilaniladi va u toʻrt rangli bosma deb ham ataladi[3].
HSI Model
HSI (Hue, Saturation, Intensity) modeli inson koʻrish tizimidan boshlanadi. HSI modelni
tasvirlash komponentalari: (Hue) soya, (Saturation) toʻyinganlik, (Intensity) yorqinlik. Rang - bu
bir xil rangni (sof sariq, sof toʻq sariq yoki sof qizil) tasvirlaydigan rang atributidir.
RGB modeldan HSI modelga oʻtkazishda har bir piksel uchun H komponent,
S komponent hamda I komponent hisoblab chiqiladi va quyidagicha boʻladi.
[4]
HSV model
HSV (Hue, Saturation, Value) model HSI modeliga yaqinroq model hisoblanadi. H rang
soyasini, S toʻyinganlikni, V yorqinlikni ifodalaydi.
RGB modeldan HSV modelga oʻtkazish quyidaicha boʻladi.
[5]
Python dasturida rang modellarini Open CV kutubxonasi yordamida shakllantirish
Kundalik hayotda biz koʻradigan rangli tasvir bu RGB tasvirlardir, lekin tasvirni qayta
ishlashda koʻpincha kulrang tasvir, ikkilik tasvir, HSV, HSI va boshqa ranglardan foydalanish
kerak boʻladi. OpenCV bu tasvirlarga erishish uchun
cvtColor()
funksiyalarini taqdim etadi.
OpenCV da
cvtColor()
funksiyasi quyidagi koʻrinishga ega:

214
tmr = cv2.cvtColor(src, code[, dst[, dstCn]])
cvtColor()
funksiya parametrlari:
src
- asl tasvirning rang maydonini oʻzgartirish uchun kirish tasviri;
dst
bu src tasvirni hajmi va chuqurligiga mos keladigan chiqish tasvirini koʻrsatadi;
Bu konversiya kodi yoki identifikatsiya kodi;
dstCn kanali qiymat 0 boʻlsa va kod manba echimlarida mavjud boʻlsa, maqsadli
tasvirdir[6].
Open CV
da
cvtColor()
funktsiya yordamida tasvirni bir modeldan boshqa modelga
oʻtkazish mumkin. OpenCV da umumiy rang modellarini oʻzgartirish funksiyalari quyidagilar:
CV_BGR2BGRA, CV_RGB2GRAY, CV_GRAY2RGB, CV_BGR2HSV, CV_BGR2XYZ,
CV_BGR2HLS va boshqalarni oʻz ichiga oladi.
Python dasturida kodi quyidagicha:
# encoding:utf-8
Natija quyidagicha:
import cv2
import numpy as np
import matplotlib.pyplot as plt
# asl tasvirni oʻqish
img_BGR = cv2.imread(ʻd:\\model.jpgʻ)
# BGR dan RGB oʻtkazish
img_RGB = cv2.cvtColor(img_BGR, cv2.COLOR_BGR2RGB)
img_GRAY = cv2.cvtColor(img_BGR, cv2.COLOR_BGR2GRAY)
# BGR dan HSV ga.
img_HSV = cv2.cvtColor(img_BGR, cv2.COLOR_BGR2HSV)
# BGR dan ycrcb ga.
img_YCrCb = cv2.cvtColor(img_BGR, cv2.COLOR_BGR2YCrCb)
# BGR dan HLS ga
img_HLS = cv2.cvtColor(img_BGR, cv2.COLOR_BGR2HLS)
# BGR dan XYZ ga.
img_XYZ = cv2.cvtColor(img_BGR, cv2.COLOR_BGR2XYZ)
# BGR dan LAB model ga
img_LAB = cv2.cvtColor(img_BGR, cv2.COLOR_BGR2LAB)
# BGR danYUV ga
img_YUV = cv2.cvtColor(img_BGR, cv2.COLOR_BGR2YUV)
# Natijani koʻrish uchun matplotlib dan foydalanamiz
sarlavha = [ʻBGRʻ, ʻRGBʻ, ʻGRAYʻ, ʻHSVʻ, ʻYCrCbʻ, ʻHLSʻ, ʻXYZʻ, ʻLABʻ, ʻYUVʻ]
tasvirlar = [img_BGR, img_RGB, img_GRAY, img_HSV, img_YCrCb,
img_HLS, img_XYZ, img_LAB, img_YUV]
for i in range(9):
plt.subplot(3, 3, i + 1), plt.imshow(tasvirlar[i], ʻgrayʻ)
plt.title(sarlavha[i])
plt.xticks([]), plt.yticks([])
plt.show()
cv2.waitKey(0)
cv2.destroyAllWindows()
Foydalanilgan adabiyotlar
1.
Tojiyev, M. (2021). Image segmentation in open cv and python. Scienceweb academic papers
collection.
2.
Ruzibaev, O., Muhamediyeva, D., & Ismailov, I. (2021, November). Selecting a Suitable
Initial Approximation Of Multi-Component Cross-Diffusion Systems. In 2021 International

215
Conference on Information Science and Communications Technologies (ICISCT) (pp. 1-4).
IEEE.
3.
Kabilovna, M. D., & Shaazizova, M. E. (2021). Neural Network Method For Solving A
Nonlinear Problem Of Cross-Diffusion Task With Variable Density. Annals of the Romanian
Society for Cell Biology, 666-679.
4.
Khasanov, D., & Primqulov, O. (2021, November). Gradient descent in machine learning. In
2021 International Conference on Information Science and Communications Technologies
(ICISCT) (pp. 1-3). IEEE
5.
Achilovich, Q. O. (2021). Efficiency of Using Smart Technologies in Teaching Technical
Sciences in Higher Educational Institutions. Middle European Scientific Bulletin, 17, 133-137.
6.
Kayumov, O. (2021). SCIENTIFIC AND THEORETICAL BASIS OF DEVELOPMENT
AND INTRODUCTION OF INNOVATIVE METHODS IN INCLUSIVE EDUCATION.
Scienceweb academic papers collection.
TASVIRLAR SIFATINI YAXSHILASHNING CHIZIQLI KONTRAST USULI
Tojiyev M.R., Ulug‘murodov Sh.A.B, Shirinboyev R.Sh.
Mirzo Ulugʻbek nomidagi Oʻzbekiston Milliy universiteti Jizzax filiali
Annotatsiya.
Zamonaviy axbrot texnologiyalar sohasida tasvirlar bilan ishlash
qurilmalari va dasturlari hozirda juda ham ko‘pdir. Biz ushbu maqolada tasvirlar sifatini
yaxshilashning chiziqli kontrast usuli o‘rganib uni python dasturida amalda bajarib natijasini
havola qilganmiz.
Kalit so‘zlar
:
kontrast, piksel,
ikkilik tasvir, ranglar palitrasi.
Raqamli tasvirlarni raqamli qurilmalar orqali olganimzda har doim ham sifatli tasvir
olmasligimiz mumkin. Bunda tasvirlar koʻpincha past kontrastga ega boʻlishi mumkin. Zaif
kontrast yorqinlikning keng doirasi bilan bog'liq boʻlib, koʻpincha yorqinlik darajasini uzatish
xususiyatlarining chiziqli boʻlmaganligi bilan ajralib turadi. Piksel palitrasi yorqinligining
minimal qiymatdan maksimal qiymatgacha oʻzgarishi tasvir sifatiga ta'sir qiladi. Tasvirning
botiq xarakteristikasi bilan tasvir qorong‘uroq boʻladi, qavariq xarakteristikasi bilan u yorug‘roq
boʻladi. Ikkala holatda ham ob'ektlarning xususiyatlari buzilgan boʻlishi va yaxshi aniqlanmagan
bo‘lishi mumkin. Palitraning yorqinligini tuzatish (chiziqlashtirish) tasvir sifatini sezilarli
darajada yaxshilaydi. Past kontrast tasvirdagi piksellarning yorqinlik funktsiyasidagi oʻzgarishlar
orqali yorqinlik shkalasining ruxsat etilgan diapazonidan ancha past boʻlishi mumkin[1]. Bunday
holda, tasvir kontrasti yorqinlikning haqiqiy dinamik diapazonini chiziqli elementga oʻzgartirish
yordamida toʻliq masshtabga "choʻzish" orqali oshiriladi. Palitra yorqinligini toʻg'rilashning yana
bir usuli bu kirish tasvirini teskari aylantirish.
Qorong'i fonda zaif signallarni ajratish juda qiyin
bo'lganligi sababli, bunday tasvirlarni aks ettirishning teskari shakli boshqa yorqinlik
gistogrammasiga ega bo‘ladi. Tasvirni qayta ishlashda kulrang rang tasvirni (yorqinligi yuqori
bo‘lgan) ikkilik tasvirga (ikki gradatsiya) aylantirishni oʻz ichiga oladi. Bunday qayta ishlash
tasvirdagi ortiqcha axborotni kamaytirish va faqat ma'lum bir muammoni hal qilish uchun zarur
boʻlgan ma'lumotlarni qoldirish uchun amalga oshiriladi. Binar tasvirda ma'lum tafsilotlar
saqlanishi kerak (masalan, tasvirlangan ob'ektlarning chegaralari) va ahamiyatsiz xususiyatlar
(fon) chiqarib tashlanishi kerak. Kulrang tasvirni chegaraviy ishlov berish tasvirning barcha
elementlarini chegara bilan yorqinlik asosida ikki sinfga boʻladi. Bular tasvir piksellarini
sinflarning belgilangan yorqinligini almashtirish bilan tegishli chegara filtrlashni amalga
oshirishdan iborat[2].
Chegarani tanlash asl tasvirning yorqinligi gistogrammasining turiga qarab belgilanadi.
Bimodal taqsimotga ega boʻlgan chizmalar, mashinkada yozilgan matn va boshqalar kabi eng
oddiy tasvirlar uchun chegara taqsimlash rejimlari orasidagi minimal darajaga oʻrnatiladi.
Umumiy holda, tasvir multimodal boʻlishi mumkin va agar ob'ektlar va ularning yorqinligining
mos rejimlari oʻrtasida yetarlicha ishonchli muvofiqlik oʻrnatilgan boʻlsa, chegara filtrlash piksel