第二週、transforms圖像增強(一)

一、數據增強

數據增強又稱爲數據增廣,數據擴增,它是對訓練集進行變換,使訓練集更豐富,從而讓模型更具泛化能力

二、transforms——裁剪

2.1 transforms.CenterCrop

transforms.CenterCrop(size)
功能: 從圖像中心裁剪圖片

  • size: 所需裁剪圖片尺寸

2.2 transforms.RandomCrop

功能: 從圖片中隨機裁剪出尺寸爲size的圖片

  • size: 所需裁剪圖片尺寸
  • padding: 設置填充大小
    當爲a時,上下左右均填充a個像素
    當爲(a, b)時,上下填充b個像素,左右填充a個像素
    當爲(a, b, c, d)時,左,上,右,下分別填充a, b, c, d
  • pad-if-need: 若圖像小於設定size ,則填充
  • padding_mode: 填充模式,有4種模式
    constant: 像素值由fill設定
    edge: 像素值由圖像邊緣像素決定
    reflect: 鏡像填充,最後一個像素不鏡像, eg: [1,2,3,4] → [3,2,1,2,3,4,3,2]
    symmetric: 鏡像填充,最後一個像素鏡像, eg: [1.2.3.4] → [2,1,1,2,3,4,4,3]
  • fill: constant時,設置填充的像素值,即填充顏色
    在這裏插入圖片描述

2.3 RandomResizedCrop

功能: 從圖片中隨機裁剪出尺寸爲size的圖片

  • size: 所需裁剪圖片尺寸
  • scale: 隨機裁剪面積比例,默認(0.08, 1)
  • ratio: 隨機長寬比,默認(3/4, 4/3)
  • interpolation: 插值方法
    PIL.Image.NEAREST
    PIL.Image.BILINEAR
    PIL.Image.BICUBIC
    在這裏插入圖片描述

2.4 FiveCrop

功能: 在圖像的上下左右以及中心裁剪出尺寸爲size的5張圖片

  • size: 所需裁剪圖片尺寸
    在這裏插入圖片描述

2.5 TenCrop

功能: 先獲得FiveCrop處理的5張圖片,對這5張圖片進行水平或者垂直鏡像獲得10張圖片

  • size: 所需裁剪圖片尺寸
  • vertical_flip: 是否垂直翻轉
    在這裏插入圖片描述

三、transforms——翻轉和旋轉

3.1 RandomHorizontalFlip

RandomHorizontalFlip(p=0.5)
功能: 依概率垂直(上下)翻轉圖片

  • p: 翻轉概率

3.2 RandomVerticalFlip

RandomVerticalFlip(p=0.5)
功能: 依概率水平(左右)翻轉圖片

  • p: 翻轉概率

3.3 RandomRotation

功能: 隨機旋轉圖片

  • degrees: 旋轉角度
    當爲a時,在(-a, a)之間選擇旋轉角度
    當爲(a, b)時,在(a, b)之間隨機選擇一個旋轉角度
  • resample: 重採樣方法
  • expand: 是否擴大圖片, 以保持原圖信息
  • center: 旋轉點設置, 默認中心旋轉
    在這裏插入圖片描述
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章