• Talaba: Tursunmurodov Azizbek Variant raqami: 11 O‘qituvchi: Norkobilov S. Toshkent – 2024
  • Nazariy qism
  • Laboratoriya ishini bajarish tartibi: Ushbu laboratoriya ishini bajarishda quyidagi funksiyalardan foydalaniladi: - Inkor (NOT) - cv2.bitwise_not(img);
  • Tartib raqami bo‘yicha maskalar dataseti
  • Mening proyektimga havola
  • O‘zbekiston respublikasi raqamli texnologiyalar vazirligi muhammad al‑xorazmiy nomidagi toshkent axborot texnologiyalari universiteti




    Download 1.07 Mb.
    Sana27.03.2024
    Hajmi1.07 Mb.
    #179208
    Bog'liq
    aZIZBEK Lab3
    xudo xoxlasa tushadi99%, 3-labarotoriya ishi Saralash usul va algoritmlarini tadqiq qilis, cmd buyruqlari, Incremental model nima, 1matematik, word sAM 1 savol, Документ Microsoft Word (4), Ma\'ruzalar (2), ЛАБОРАТОРНАЯ РАБОТА N1, Dasturlash 2, Ariza, Qalandarova Gulshoda, 1648631455, 1650692784, 1651669892 (2)

    O‘ZBEKISTON RESPUBLIKASI
    RAQAMLI TEXNOLOGIYALAR VAZIRLIGI


    MUHAMMAD AL‑XORAZMIY NOMIDAGI
    TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI

    VIDEOMA’LUMOTLARGA RAQAMLI ISHLOV BERISH”


    fanidan
    3-laboratoriya ishi


    HISOBOTI

    Guruh: 840-20


    Talaba: Tursunmurodov Azizbek


    Variant raqami: 11


    O‘qituvchi: Norkobilov S.
    Toshkent – 2024

    3-Laboratoriya ishi: Kadr hududini maska yordamida kesib olish.




    Ishning maqsadi: Ushbu laboratoriya ishining maqsadi tasvirlarda mantiqiy amallar bajarish orqali belgilangan o‘lchamda tasvir elementini qirqib olish va o‘rnatish kabi amallarni bajarishdan iborat. Buning uchun kadrlarni qo‘shish, ayirish, aralashtirish hamda kadrlarda mantiqiy (AND, OR, NOT, XOR) amallarni bajarish lozim.
    Nazariy qism
    Ushbu laboratoriya ishining maqsadi tasvirlarda mantiqiy amallar bajarish orqali belgilangan o‘lchamda tasvir elementini qirqib olish va o‘rnatish kabi amallarni bajarishdan iborat. Buning uchun kadrlarni qo‘shish, ayirish, aralashtirish hamda kadrlarda mantiqiy (AND, OR, NOT, XOR) amallarni bajarish lozim.

    1-rasm. (a) Tekislikdagi ikkita koordinatalar to‘plami, A va B. (b) A va B to‘plamlar birligi. (c) A va B to‘plamlarning kesishishi. (d) A to‘plamning to‘ldiruvchisi. (e) A to‘plamlarning ayirmasi. va B. (b)—(e) raqamlaridagi soyali maydonlar belgilangan amal natijasi bo‘lgan to‘plam elementlarini ifodalaydi.

    Ikki belgilangan hududni, ya’ni oldingi piksellardan tashkil topgan A va B to‘plamlarini ko‘rib chiqamiz (1-rasm). Ushbu ikkita to‘plamdagi OR operatsiyasi bir vaqtning o‘zida A yoki B hamda ikkala to‘plamga tegishli bo‘lgan elementlar to‘plamini (koordinatalar juftligini) beradi. AND amali A va B uchun umumiy bo‘lgan elementlar to‘plamini beradi. A to‘plamga qo‘llaniladigan EMAS amali A to‘plamga tegishli bo‘lmagan elementlar to‘plamini beradi. Chunki biz A berilgan tasvir haqida gapiramiz.


    Nazariy jihatdan, faqat uchta mantiqiy amallar VA, YOKI va EMASni amalga oshirish kerak, chunki ular to‘rtinchi qatorda ko‘rsatilganidek, boshqa har qanday mantiqiy operatsiyani faqat ushbu asosiy operatsiyalarni birlashtirish orqali olish mumkin degan ma’noda funksional jihatdan to‘liq sinfni tashkil qiladi.

    2-rasm. O‘rnatilgan farq operatsiyasi AND va EMAS yordamida amalga oshiriladi.
    Laboratoriya ishini bajarish tartibi:
    Ushbu laboratoriya ishini bajarishda quyidagi funksiyalardan foydalaniladi:
    - Inkor (NOT) - cv2.bitwise_not(img);
    - Yoki (OR) - bitwise_or(img1,img2);
    - Va (AND) - bitwise_and(img1, img2)

    - Har bir talaba kaggle.com platformasida o‘zining shaxsiy profiliga kirishi va yangi dastur yozish uchun yangi oyna ochishi lozim hamda quyidagicha dastur kodini kiritishi kerak bo‘ladi:


    - “kaggle” platformasida yaratilgan 1000x750 o‘lchamdagi maskalar dataseti bo‘yicha o‘z rasmlaringizni birlashtirish.
    Tartib raqami bo‘yicha maskalar dataseti
    3-rasm. Dasets variantlar.
    Dastur kodi:
    import cv2
    import numpy as np
    from matplotlib import pyplot as plt

    mask_img = cv2.imread("../input/test-imgs/mask-18.bmp")


    mask_img=cv2.cvtColor(mask_img, cv2.COLOR_BGR2RGB)
    img_mask_invert = cv2.bitwise_not(mask_img)

    img1 = cv2.imread("../input/test-imgs/1.png")


    img1=cv2.cvtColor(img1, cv2.COLOR_BGR2RGB)

    img2 = cv2.imread("../input/test-imgs/3.png")


    img2=cv2.cvtColor(img2, cv2.COLOR_BGR2RGB)

    print(mask_img.shape)


    print(img1.shape)
    print(img2.shape)

    img1_m=cv2.bitwise_and(img_mask_invert,img1)


    img2_m=cv2.bitwise_and(mask_img,img2)

    img_or=cv2.bitwise_or(img1_m,img2_m)


    plt.figure(figsize=(40, 40))


    ax10 = plt.subplot2grid((5, 2), (0, 0))
    ax11 = plt.subplot2grid((5, 2), (0, 1))
    ax20 = plt.subplot2grid((5, 2), (1, 0))
    ax21 = plt.subplot2grid((5, 2), (1, 1))
    ax30 = plt.subplot2grid((5, 2), (2, 0))
    ax31 = plt.subplot2grid((5, 2), (2, 1))
    ax4 = plt.subplot2grid((5, 2), (3, 0),rowspan=2, colspan=2)

    ax10.imshow(img1),ax10.axis('off')


    ax11.imshow(img2),ax11.axis('off')

    ax20.imshow(img_mask_invert),ax21.axis('off')


    ax21.imshow(mask_img),ax20.axis('off')
    ax30.imshow(img1_m),ax30.axis('off')
    ax31.imshow(img2_m),ax31.axis('off')
    ax4.imshow(img_or),ax4.axis('off')

    plt.show()


    Dastur natijasi:


    Original tasvir (a) Original tasvir (b)




    4-rasm. Dastur natijasi.
    Xulosa

    3-Laboratoriya ishida men maskalar yordamida 2 ta rasimni bir-biriga qo’shish ya’ni usma-ust qo’yishni o’rgandim. Bu ish men uchun tajriba bo’ldi. Mantiqiy amallar yordamida belgilangan rasmlarga qirqib olish yo’li bilan o’zgartirishlar kiritdim kadrlarni qo‘shish, ayirish, aralashtirish hamda kadrlarda mantiqiy (AND, OR, NOT, XOR) amallarni bajarish yo’li bilan 2 ta rasm ustida turli amallar bajarish mumkin ekan.


    Mening proyektimga havola:
    https://www.kaggle.com/code/azizbektursunmurodov/azizbek-lab3/edit
    Download 1.07 Mb.




    Download 1.07 Mb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    O‘zbekiston respublikasi raqamli texnologiyalar vazirligi muhammad al‑xorazmiy nomidagi toshkent axborot texnologiyalari universiteti

    Download 1.07 Mb.