Mask RCNN測試過程經驗總結
在做Mask RCNN測試圖片的過程中遇到了太多問題 總結一下
1.Dataset資料集
原始碼train_shapes.py中給的是ShapesDataset,實際上這是生成一個簡單形狀(正方形/三角形/原型)的資料集
我們需要將它修改成自己想要測試的資料集
個人建議根據自己的資料集命名,比如我是對於樹木的檢測,就將其命名為TreeDataset
我的修改方式是將訓練檔案coco.py中的CocoDataset改為TreeDataset,並建立一個test_shape.py作為測試檔案,同時將class裡面的方法都拿到test_shape.py中,後續可能會有用到
之後呼叫自己的TreeDataset資料集就行:
# Validation dataset
dataset_val = TreesDataset()
dataset_val.load_trees("驗證集所在路徑","val", year="2014", auto_download=False)
dataset_val.prepare()
2.載入ground truth
original_image, image_meta, gt_class_id, gt_bbox, gt_mask = modellib.load_image_gt(dataset_val, inference_config, image_id, use_mini_mask=False)
3.測試結果視覺化
原始碼中已經給出了視覺化的方法:
visualize.display_instances(original_image, r['rois'], r['masks'], r['class_ids'], class_names, r['scores'])
如果我們想要在測試圖片上顯示一些面積等資料,就可以在display_instances方法中新增修改一些程式碼
我是想顯示一些面積資料,就從IoU計算的方法裡拿了mask面積的計算方法
pre_mask1 = np.reshape(masks > .5, (-1, masks.shape[-1])).astype(np.float32)
pre_mask_area = np.sum(pre_mask1, axis=0)
這裡有一個需要注意的地方,因為在test_shape.py中的ShapesConfig有一個IMAGE_MAX_DIM = 1280引數
這是將我們輸入的測試圖片縮放成1280,所以如果想要顯示真實資料,要把資料按比例縮放回去
相關文章
- 從測試小白到測試組長,談談我的測試過程及管理經驗總結
- 測試經驗總結:測試員的角色
- 兩年測試經驗總結
- JMeter測試WebSocket的經驗總結JMeterWeb
- 一位測試大神的軟體測試工作經驗總結
- Google Test交流與測試開發經驗總結Go
- 從零開始 Mask RCNN 實戰:基於 Win10 的 Mask RCNN 環境搭建CNNWin10
- Spring+MyBatis+JUnit整合測試的搭建過程總結SpringMyBatis
- 二階段目標檢測網路-Mask RCNN 詳解CNN
- vim高階用法多年經驗原創總結(全部測試成功)
- docker學習系列16使用過程的一些經驗總結Docker
- 《軟體測試實戰:微軟技術專家經驗總結》前言微軟
- 移動應用可用性測試的實踐經驗總結
- mask rcnn模型踩坑指南 tusimple mx-maskrcnnCNN模型
- 他們測試了上萬款APP應用,總結了APP測試的經驗及流程APP
- 在我有限的軟體測試經歷裡,一段專職的自動化測試經驗總結
- 工作經驗總結
- vue經驗總結Vue
- mysql經驗總結MySql
- Java經驗總結Java
- Storm經驗總結ORM
- Resin 經驗總結
- faster rcnn中anchor的生成過程理解ASTCNN
- 一份經過時間檢驗的 Laravel PHPUnit 測試經驗分享LaravelPHP
- Keras中Mask的傳遞過程Keras
- 一個專案經理的切身經驗總結:測試用例可以被替代嗎?
- 測試總結①
- 【測試運維】效能測試經驗文件總結第3篇:VuGen詳解(已分享,附程式碼)運維
- 如何使用Mask RCNN模型進行影像實體分割?CNN模型
- Polar mask錯誤總結
- DataGuard寫測試實驗步驟及總結
- IT職場管理經驗總結
- Eclipse經驗總結Eclipse
- mysql使用經驗總結MySql
- 做題經驗總結
- 軟體測試之功能測試、效能測試經驗談
- [測試經驗] 依賴方介面呼叫測試
- 【JUnit測試】總結