Manba: Aleksandr Mordvintsev & Abid k noyabr 05, 2017


Tasvirlar bo'yicha asosiy operatsiyalar



Download 12,25 Mb.
bet9/16
Sana03.01.2022
Hajmi12,25 Mb.
#314973
1   ...   5   6   7   8   9   10   11   12   ...   16
Bog'liq
1-jamlanma(lab-amaliy)

Tasvirlar bo'yicha asosiy operatsiyalar

Maqsadlar

• Piksel qiymatlariga kiring va ularni o'zgartiring

• Tasvir xususiyatlariga kirish

• Tasvirning mintaqasini (ROI) belgilash

• Tasvirlarni bo'lish va birlashtirish

Ushbu bo'limda deyarli barcha operatsiyalar asosan OpenCV emas, balki Numpy bilan bog'liq. OpenCV bilan yaxshiroq optimallashtirilgan kodni yozish uchun Numpy haqida yaxshi ma'lumot talab qilinadi.

(Misollar Python terminalida ko'rsatiladi, chunki ularning aksariyati faqat bitta qatorli kodlar)

Piksel qiymatlariga kirish va o'zgartirish

Avval rangli rasmni yuklaylik:

Piksel qiymatiga uning qatori va ustun koordinatalari orqali kirishingiz mumkin. BGR tasviri uchun u ko'k, yashil, qizil ranglar qatorini qaytaradi. Kul rangdagi rasm uchun mos keladigan intensivlik qaytariladi.



Piksel qiymatlarini xuddi shunday o'zgartirishingiz mumkin.



Ogohlantirish: Numpy bu tez qatorlarni hisoblash uchun optimallashtirilgan kutubxona. Shunday qilib, har bir piksel qiymatiga kirish va uni o'zgartirish juda sekin bo'ladi va u tushkunlikka tushadi.



Rasm xususiyatlariga kirish

Tasvir xususiyatlariga qatorlar, ustunlar va kanallar soni, rasm ma'lumotlari turi, piksellar soni va boshqalar kiradi. Rasm shakliga img.shape orqali kirish mumkin. U satrlar, ustunlar va kanallar sonining ketma-ketligini qaytaradi (agar rasm rang bo'lsa):

Umumiy piksellar sonini img.size orqali ko'rish mumkin:



Tasvirning ma'lumotlar turi img.dtype tomonidan olinadi:



Roy surati

Ba'zan, muayyan mintaqadagi tasvirlar bilan o'ynashga to'g'ri keladi. Tasvirlarda ko'zni aniqlash uchun, avval yuzni topgunga qadar tasvirni yuzni aniqlashni amalga oshiring, so'ngra yuzni qidirib qidirib ko'ring. Ushbu yondashuv aniqlikni yaxshilaydi (chunki ko'zlar doimo yuzlardadir: D) va ishlash (chunki biz kichik joy qidiramiz).

ROI yana Numpy indeksatsiya yordamida olinadi. Mana men to'pni tanlayapman va uni rasmdagi boshqa mintaqaga ko'chirmoqdaman:



Quyidagi natijalarni tekshiring:



Tasvir kanallarini ajratish va birlashtirish

Tasvirning B, G, R kanallari kerak bo'lganda ularning shaxsiy tekisliklariga bo'linishi mumkin. Keyin, alohida kanallar yana birlashtirilib, BGR tasvirini yana hosil qiladi. Buni quyidagilar bajarishi mumkin:

Yoki


Aytaylik, siz barcha qizil piksellarni nolga aylantirmoqchisiz, siz bunday bo'linmasligingiz va uni nolga teng qo'yishingiz shart emas. Siz shunchaki tezroq bo'lgan Numpy indeksatsiyadan foydalanishingiz mumkin.



Tasvirlar uchun chegaralar o'rnatish (to'ldirish)

Agar siz foto ramka kabi biror narsa atrofida chegara yaratmoqchi bo'lsangiz, siz cv2.copyMakeBorder () funktsiyasidan foydalanishingiz mumkin. Ammo bu yig'ish jarayoni, nol to'ldirish va hokazolar uchun ko'proq dasturlarga ega. Bu funktsiya quyidagi dalillarni oladi:

• src- kiritish tasvir

• tegishli yo'nalishlar bo'yicha piksel sonida yuqori, pastki, chap va o'ng chegara kengligi

• chegara tipidagi bayroqcha qo'shildi. Quyidagi yo'nalishlar:

- cv2.BORDER_CONSTANT - Doimiy rangli chegaralarni qo'shadi. Qiymat keyingi dalil sifatida berilishi kerak.

- cv2.BORDER_REFLECT - Chegara chegara elementlarining qaytarilish oynasi bo'ladi, masalan: fedcba | abcdefgh | hgfedcb

- cv2.BORDER_REFLECT_101 yoki cv2.BORDER_DEFAULT - Yuqoridagi kabi, lekin biroz o'zgarishi bilan, masalan: gfedcb | abcdefgh | gfedcba

- cv2.BORDER_REPLICATE - Oxirgi element quyidagicha takrorlanadi: aaaaaa | abcdefgh | hhhhhh

- cv2.BORDER_WRAP- Tushuna olmayman, u quyidagicha bo'ladi: cdefgh | abcdefgh | abcdefg

value - chegara turi cv2 bo'lsa chegara rangi. BORDER_CONSTANT

Tushunish uchun quyida barcha chegara turlarini namoyish etuvchi namunaviy kod keltirilgan:

Quyidagi natijani ko'ring. (Rasm matplotlib bilan namoyish qilinadi. Shunday qilib, RED va BLUE samolyotlari o'zaro almashinadi):






      1. Download 12,25 Mb.

        Do'stlaringiz bilan baham:
1   ...   5   6   7   8   9   10   11   12   ...   16




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish