<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # 五、如何將原始圖片數據轉換為 TFRecords 大家好! 與前一個教程一樣,本教程的重點是自動化數據輸入流水線。 大多數情況下,我們的數據集太大而無法讀取到內存,因此我們必須準備一個流水線,用于從硬盤批量讀取數據。 我總是將我的原始數據(文本,圖像,表格)處理為 TFRecords,因為它讓我的生活變得更加容易。 教程的流程圖 ![](https://img.kancloud.cn/43/fe/43fee7a3bc176207d429b2b3a1d4e5f6_1248x576.png) 本教程將包含以下部分: + 創建一個函數,讀取原始圖像并將其轉換為 TFRecords 的。 + 創建一個函數,將 TFRecords 解析為 TF 張量。 所以廢話不多說,讓我們開始吧。 ### 導入有用的庫 ```py import tensorflow as tf import tensorflow.contrib.eager as tfe import glob # 開啟 Eager 模式。一旦開啟不能撤銷!只執行一次。 tfe.enable_eager_execution() ``` ### 將原始數據轉換為 TFRecords 對于此任務,我們將使用 FER2013 數據集中的一些圖像,你可以在`datasets/dummy_images`文件夾中找到這些圖像。 情感標簽可以在圖像的文件名中找到。 例如,圖片`id7_3.jpg`情感標簽為 3,其對應于狀態`'Happy'`(快樂),如下面的字典中所示。 ```py # 獲取每個情感的下標的含義 emotion_cat = {0:'Angry', 1:'Disgust', 2:'Fear', 3:'Happy', 4:'Sad', 5:'Surprise', 6:'Neutral'} def img2tfrecords(path_data='datasets/dummy_images/', image_format='jpeg'): ''' 用于將原始圖像以及它們標簽轉換為 TFRecords 的函數 輔助函數的原始的源代碼:https://goo.gl/jEhp2B Args: path_data: the location of the raw images image_format: the format of the raw images (e.g. 'png', 'jpeg') ''' def _int64_feature(value): '''輔助函數''' return tf.train.Feature(int64_list=tf.train.Int64List(value=[value])) def _bytes_feature(value): '''輔助函數''' return tf.train.Feature(bytes_list=tf.train.BytesList(value=[value])) # 獲取目錄中每個圖像的文件名 filenames = glob.glob(path_data + '*' + image_format) # 創建 TFRecordWriter writer = tf.python_io.TFRecordWriter(path_data + 'dummy.tfrecords') # 遍歷每個圖像,并將其寫到 TFrecords 文件中 for filename in filenames: # 讀取原始圖像 img = tf.read_file(filename).numpy() # 從文件名中解析它的標簽 label = int(filename.split('_')[-1].split('.')[0]) # 創建樣本(圖像,標簽) example = tf.train.Example(features=tf.train.Features(feature={ 'label': _int64_feature(label), 'image': _bytes_feature(img)})) # 向 TFRecords 寫出序列化樣本 writer.write(example.SerializeToString()) # 將原始數據轉換為 TFRecords img2tfrecords() ``` ### 將 TFRecords 解析為 TF 張量 ```py def parser(record): '''解析 TFRecords 樣本的函數''' # 定義你想要解析的特征 features = {'image': tf.FixedLenFeature((), tf.string), 'label': tf.FixedLenFeature((), tf.int64)} # 解析樣本 parsed = tf.parse_single_example(record, features) # 解碼圖像 img = tf.image.decode_image(parsed['image']) return img, parsed['label'] ``` 如果你希望我在本教程中添加任何內容,請告訴我,我將很樂意進一步改善它。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看