• Tizimlar va signallar fanidan 8-9-amaliy mashg‘ulotlar yuzasidan topshiriq
  • Tizimlar va signallar fanidan 8-9-amaliy mashg‘ulotlar yuzasidan topshiriq




    Download 10,18 Kb.
    Sana07.01.2024
    Hajmi10,18 Kb.
    #131608
    Bog'liq
    TSQI 3-Topshiriq (1)
    3х4 шакл, 25 банди тугарак


    O‘ZBEKISTON RESPUBLIKASI RAQAMLI TEXNOLOGIYALAR VAZIRLIGI MUHAMMAD AL-XORAZMIY NOMIDAGI
    TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI

    Kompyuter injiniringi fakulteti


    Sun’iy intellekt kafedrasi
    Tizimlar va signallar fanidan
    3-TOPSHIRIQ
    Mavzu: 8-9 amaliy mashg‘ulotlar yuzasidan Natijaviy signallar, diskret cosinus koeffisenti (DCT) jarayonlarini o‘rganish
    Bajardi: Sharofiddinov Shahzod 050-20 guruh talabasi
    _________________________________
    Tekshirdi: Mo’minov Elyor
    Baho:_____
    TOSHKENT 2023
    Tizimlar va signallar fanidan 8-9-amaliy mashg‘ulotlar yuzasidan topshiriq

    1. 4 ta ixtiyoriy signal uchun DCT ni hisoblang.

    2. DCT dasturini ishlab chiqish (ixtiyoriy dasturlash tilida)

    1.

    Tabii, ixtiyoriy bir sinyal uchun DCT hisoblash uchun quyidagi Python kodini yozishim mumkin:

    ```python


    import numpy as np

    # Ixtiyoriy sinyal


    signal = np.array([5, 10, 3, 7])

    # DCT ni hisoblash


    dct_result = np.fft.dct(signal, type=2) # type=2: DCT tipi 2

    # Natijani chiqarish


    print("Signal:", signal)
    print("DCT Koeffitsientlari:", dct_result)
    ```

    Bu kod, `numpy` kutubxonasidan foydalanadi va `np.fft.dct` funktsiyasini ishlatadi. `np.array()` orqali ixtiyoriy bir sinyal yaratamiz va keyin DCT ni `np.fft.dct()` orqali hisoblaymiz. `type=2` argumenti bilan DCT turini belgilaymiz.


    Bu oddiy va effektiv algoritm bo'lib, `numpy` kutilmagan tushunchalarni hisoblashda yordam beradi. Siz o'zingizning ixtiyoringizdagi sinyalni `signal` o'zgaruvchisiga o'rnating va kodni bajaringiz, bu usul orqali sinyalingizning DCT koeffitsientlarini hisoblay olasiz.


    2.

    import math


    # 4 elementli ixtiyoriy bir sinyal


    signal = [1, 2, 3, 4]

    # DCT ni hisoblash funksiyasi


    def calculate_dct(signal):
    N = len(signal)
    dct_result = []

    for k in range(N):


    summa = 0
    for n in range(N):
    summa += signal[n] * math.cos(math.pi * k * (2 * n + 1) / (2 * N))
    if k == 0:
    dct_result.append(summa * math.sqrt(1 / N))
    else:
    dct_result.append(summa * math.sqrt(2 / N))
    return dct_result

    # DCT ni hisoblash


    dct_coefficients = calculate_dct(signal)

    # Natijani chiqarish


    print("Signal:", signal)
    print("DCT Koeffitsientlari:", dct_coefficients)


    Download 10,18 Kb.




    Download 10,18 Kb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Tizimlar va signallar fanidan 8-9-amaliy mashg‘ulotlar yuzasidan topshiriq

    Download 10,18 Kb.