• get_dataset
  • Iterator Ma’lumotlar to‘plamidan dekodlangan tasvir ma’lumotlarini olishimiz mumkin bo‘lgan usul tensorflow.data.Iterator
  • Image Recognition




    Download 5,69 Mb.
    bet88/182
    Sana19.05.2024
    Hajmi5,69 Mb.
    #244351
    1   ...   84   85   86   87   88   89   90   91   ...   182
    Bog'liq
    Python sun\'iy intellekt texnologiyasi Dasrlik 2024

    Ma’lumotlar to‘plami
    Odatda biz tasvir bilan bog’liq vazifalarni bajarganimizda, biz katta hajmdagi tasvir ma’lumotlari bilan shug’ullanamiz. Bunday holda, barcha tasvirlarni saqlash uchun TensorFlow ma’lumotlar to‘plamidan, ya’ni tensorflow.data.Datasetdan foydalanish yaxshidir. Biz from_tensor_slices funktsiyasidan foydalanib ma’lumotlar to‘plamini yaratishimiz mumkin.
    Dataset sinfi barcha tasvir fayllari bilan vazifalarni bajarishni oson va samaraliroq qiladi. Tasvir fayllari bilan ma’lumotlar to‘plamini yaratganimizdan so‘ng, har bir fayl tarkibini foydalanish mumkin bo‘lgan piksel ma’lumotlariga dekodlashimiz kerak bo‘ladi. decode_image funksiyasi bitta rasm fayllari uchun ishlaganligi sababli, ma’lumotlar to‘plami ob’ektining map funksiyasidan foydalanishimiz kerak bo‘ladi. maʼlumotlar toʻplami.
    Xarita funktsiyasining chiqishi yangi ma’lumotlar to‘plami bo‘lib, har bir element endi asl tasvir faylidan tegishli piksel ma’lumotlariga aylantiriladi. Biz har bir rasm faylini qo‘lda aylantirish uchun for loopidan ko‘ra xaritadan foydalanamiz, chunki xarita fayllar bo‘ylab parallel ravishda tasvirni dekodlashni amalga oshiradi va bu uni yanada samaraliroq hal qiladi.
    import tensorflow as tf
    def get_dataset(image_paths, image_type, resize_shape, channels):
    filename_tensor = tf.constant(image_paths)
    dataset = tf.data.Dataset.from_tensor_slices(filename_tensor)
    def _map_fn(filename):
    decode_images = decode_image(filename, image_type, resize_shape, channels=channels)
    return decode_images
    map_dataset = dataset.map(_map_fn) # we use the map method: allow to apply the function _map_fn to all the
    # elements of dataset
    return map_dataset
    Iterator
    Ma’lumotlar to‘plamidan dekodlangan tasvir ma’lumotlarini olishimiz mumkin bo‘lgan usul tensorflow.data.Iterator orqali. Biz ma’lumotlarni olish uchun ishlatiladigan keyingi element tensorini olish uchun get_next funksiyasidan foydalanamiz.
    def get_image_data(image_paths, image_type, resize_shape, channels):
    dataset = get_dataset(image_paths, image_type, resize_shape, channels)
    iterator = tf.compat.v1.data.make_one_shot_iterator(dataset)
    next_image = iterator.get_next()
    return next_image
    Ijro
    Endi biz barcha qadamlarni bir joyga to‘plab, uni futbol_to‘pi rasmiga qo‘llasak, biz quyidagilarga erishamiz:

    7.1.2-rasm.Dastur natija oynasi
    Bunday holda, ma’lumotlar to‘plami faqat bitta rasmdan iborat. get_image_data chiqishi 1980x1710x3 oʻlchamdagi massivdir, chunki u 1980x1710 pikselli RGB rasmidir. Keyin bizda har bir pikselning qiymati bor.
    Ma’lumotlar to‘plamimizning barcha tasvirlari uchun ushbu ishlov berish bosqichini bajarganimizdan so‘ng, keyingi qadam ba’zi naqshlarni, ob’ektlarni, hodisalarni tanib olishni o‘rganish uchun neyron tarmog’imizni yaratish va uni ma’lumotlar to‘plamimiz bilan ta’minlashdir

    Download 5,69 Mb.
    1   ...   84   85   86   87   88   89   90   91   ...   182




    Download 5,69 Mb.