Python深度學習之使用Albumentations對圖像做增強_第1頁
Python深度學習之使用Albumentations對圖像做增強_第2頁
Python深度學習之使用Albumentations對圖像做增強_第3頁
Python深度學習之使用Albumentations對圖像做增強_第4頁
全文預覽已結(jié)束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

第Python深度學習之使用Albumentations對圖像做增強forbbox,category_idinzip(bboxes,category_ids):

class_name=category_id_to_name[category_id]

img=visualize_bbox(img,bbox,class_name)

plt.figure(figsize=(12,12))

plt.axis('off')

plt.imshow(img)

三、獲取圖像和標注

在此示例中,我們將使用來自COCO數(shù)據(jù)集的圖像,該圖像具有兩個關聯(lián)的邊界框。該映像位于/#exploreid=386298

從磁盤加載圖像

image=cv2.imread('images/000000386298.jpg')

image=cv2.cvtColor(image,cv2.COLOR_BGR2RGB)

用坐標和類標簽定義兩個邊界框

這些邊界框的坐標使用coco格式聲明。每個邊界框使用四個值[x_min,y_min,width,height]進行描述。有關邊界框坐標的不同格式的詳細說明,請參閱有關邊界框的文檔文章-https://albumentations.ai/docs/getting_started/bounding_boxes_augmentation/。

bboxes=[[5.66,138.95,147.09,164.88],[366.7,80.84,132.8,181.84]]

category_ids=[17,18]

#Wewillusethemappingfromcategory_idtotheclassname

#tovisualizetheclasslabelfortheboundingboxontheimage

category_id_to_name={17:'cat',18:'dog'}

展示圖像的邊框

visualize(image,bboxes,category_ids,category_id_to_name)

四、使用RandomSizedBBoxSafeCrop保留原始圖像中的所有邊界框

RandomSizedBBoxSafeCropcropsarandompartoftheimage.Itensuresthatthecroppedpartwillcontainallboundingboxesfromtheoriginalimage.Thenthetransformrescalesthecroptoheightandwidthspecifiedbytherespectiveparameters.Theerosion_rateparametercontrolshowmuchareaoftheoriginalboundingboxcouldbelostaftercropping.erosion_rate=0.2meansthattheaugmentedboundingbox'sareacouldbeupto20%smallerthantheareaoftheoriginalboundingbox.

RandomSizedBBoxSafeCrop裁剪圖像的隨機部分。它確保裁剪的部分將包含原始圖像的所有邊界框。然后,變換會將作物重新縮放為相應參數(shù)指定的高度和寬度。erosion_rate參數(shù)控制裁剪后可能丟失原始邊界框的面積。frosting_rate=0.2表示擴充后的邊界框的面積可能比原始邊界框的面積小20%。

五、定義增強管道

transform=A.Compose(

[A.RandomSizedBBoxSafeCrop(width=448,height=336,erosion_rate=0.2)],

bbox_params=A.BboxParams(format='coco',label_fields=['category_ids']),

六、輸入用于增強的圖像和邊框

我們固定隨機種子是為了可視化目的,因此增強將始終產(chǎn)生相同的結(jié)果。在真實的計算機視覺管道中,您不應該在對圖像應用轉(zhuǎn)換之前固定隨機種子,因為在這種情況下,管道將始終輸出相同的圖像。圖像增強的目的是每次使用不同的變換。

random.seed(7)

transformed=transform(image=image,bboxes=bboxes,category_ids=category_ids)

visualize(

transformed['image'],

transformed['bboxes'],

transformed['category_ids'],

category_id_to_name,

七、其他不同隨機種子的示例

random.seed(3)

transformed=transform(image=image,bboxes=bboxes,category_ids=category_ids)

visualize(

transformed['image'],

transformed['bboxes'],

transformed['category_ids'],

category_id_to_name,

random.seed(444)

transformed=transform(image=image,bboxes=bboxes,category_

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論