當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Tensorflow.js tf.layers.cropping2D()用法及代碼示例


Tensorflow.js是Google開發的開源工具包,用於在瀏覽器或節點平台上執行機器學習模型和深度學習神經網絡。它還使開發人員能夠在 JavaScript 中創建機器學習模型,並直接在瀏覽器中或通過 Node.js 使用它們。

tf.layers.cropping2D() 函數用於裁剪圖像張量的頂部、底部、左側和右側的輸入。

用法:

tf.layers.cropping2D(args)

輸入形狀:4D 張量,形狀:

  • 如果數據格式是channelsLast:[批次、行、列、通道]
  • 如果 data_format 是channelsFirst:[批次、通道、行、列]。

輸出形狀:4D 形狀:

  • 如果數據格式是channelsLast:[批次、croppedRows、croppedCols、通道]
  • 如果數據格式是channelsFirst:[批次、通道、croppedRows、croppedCols]。

參數:

  • args:它是一種接受以下屬性的對象類型:
    • cropping (number|[number, number]|[[number, number], [number, number]]):沿寬度和高度裁剪的尺寸。
    • dataFormat:數據格式。這指定了輸入中維度的排序順序。 ChannelLast 是默認值。
    • inputShape:如果設置了此屬性,它將用於構造一個輸入層,該輸入層將插入到該層之前。
    • batchInputShape:如果設置了此屬性,將創建一個輸入層並將其插入到該層之前。
    • batchSize:如果未提供batchInputShape而提供了inputShape,則使用batchSize來構建batchInputShape。
    • dtype:這是該層的數據類型。 float32 是默認值。該參數僅適用於輸入層。
    • name:這是圖層的名稱,是字符串類型。
    • trainable:如果該層的權重可以通過擬合來改變。 True 是默認值。
    • weights:圖層的初始權重值。

返回:它返回一個對象(Cropping2D)。

示例 1:

Javascript


import * as tf from "@tensorflow/tfjs"; 
  
const input = tf.input({ shape: [10, 10, 4] }); 
  
const cropping2DLayer = tf.layers 
    .cropping2D({ cropping: [[2, 2],[2, 2]] }); 
      
const output = cropping2DLayer.apply(input); 
  
console.log(output.shape)

輸出:

[ null, 6, 6, 4 ]

示例 2:

Javascript


import * as tf from "@tensorflow/tfjs"; 
  
const input = tf.input({ shape: [10, 10, 6] }); 
const cropping2DLayer = tf.layers 
    .cropping2D({  
    cropping: [[3, 2],[2, 3]],  
    dataFormat: 'channelsFirst' 
}); 
  
const output = cropping2DLayer.apply(input); 
  
console.log(output.shape)

輸出:

[ null, 10, 5, 1 ]

參考: https://js.tensorflow.org/api/latest/#layers.cropping2D



相關用法


注:本文由純淨天空篩選整理自aayushmohansinha大神的英文原創作品 Tensorflow.js tf.layers.cropping2D() Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。