一步一步教你跑DCPDN深度學習去霧網路

2021-09-16 23:07:38 字數 1920 閱讀 3096

**:densely connected pyramid dehazing network(cvpr2018)

**就不講解了,網上有,步驟開始:

1、環境安裝:

ubuntu16.0.4平台執行

python2.7環境

pytorch>=0.3.1框架

cuda9.0+cudnn7

訓練網路需要使用gpu,視訊記憶體和執行記憶體、還有系統交換區swap不要太摳,不然容易程式無法進行而報錯。還有系統共享記憶體也不能不足,我的電腦勉強用100個訓練資料訓練,迭代了40000次。

建議安裝anaconda3建立python環境,便於管理,執行程式時,如果缺什麼包直接使用anaconda整合安裝到環境裡即可。

2、專案檔案結構(部分重點介紹)

專案新增資料後的根目錄如下:

facades:最重要,也是最大的資料夾,內容如下圖。其中,nat_new4資料夾儲存用於測試的實際h5資料,test_cvpr資料夾儲存你的實際有霧轉換的h5檔案,用於去霧。train512為用於訓練的h5檔案,共有4000個,根據你自己系統能力,從頭按順序連續選取部分資料,作者使用0-1000來訓練網路,會迭代400*1000=400000次。val512儲存400個用於對抗鑑別器訓練的h5檔案。

result_cvpr18:儲存去霧結果的資料夾。

create_train.py:所有合成的,用於訓練和測試的資料樣本,都在hdf5檔案中進行了掃瞄。您還可以使用「create_train.py」生成樣本資料。

dehaze22.py:去霧網路模型框架。

python demo.py --dataroot ./facades/nat_new4 --valdataroot ./facades/nat_new4 --netg ./demo_model/netg_epoch_8.pth
train.py:訓練網路使用,使用以下命令:(實際是微調作者提供的預訓練模型,並儲存下來)

python train.py --dataroot ./facades/train512 --valdataroot ./facades/test512 --exp ./checkpoints_new --netg ./demo_model/netg_epoch_8.pth
python demo.py --dataroot ./facades/test_cvpr --valdataroot ./facades/test_cvpr --netg ./checkpoints_new/netg_epoch_9.pth
./facades/test_cvpr為你的實際有霧生成的h5檔案所在的根目錄,./checkpoints_new/netg_epoch_9.pth為生成的模型的路徑。訓練中途會儲存很多模型,選擇你覺得效果好的模型使用即可。

3、原始碼適配

generate_testsample.py:

去掉99行的注釋,防止自己輸入的不是規定尺寸;

第乙個包numpy不需要as np;

create_train.py:

第119行reshap的引數a改為a;

引用numpy包不需要as np。

4、致謝

感謝作者的貢獻,感謝大家的支援!

一步一步學cscope

告之 1,我不喜歡寫部落格 因為感覺太浪費時間 2,部落格能記住自己某階段學過的東西,而這些東西可能會很快的忘卻 所以我以後要學著在部落格上浪費時間 前言 本文件記錄了我今天 2007 11 9 下午學習cscope的一點收穫,特收錄部落格以作分享。在學習cscope過程中查閱了大量的文件,但發現適...

一步一步學Linq to sql

一步一步學linq to sql 一 預備知識 一步一步學linq to sql 二 datacontext與實體 一步一步學linq to sql 三 增刪改 一步一步學linq to sql 四 查詢句法 一步一步學linq to sql 五 儲存過程 一步一步學linq to sql 六 特性...

一步一步學RenderMonkey

rendermonkey的基本使用方法 用rendermonkey 進行shader開發 一 用rendermonkey 進行shader開發 二 rendermonkey製作photoshop特效 前言 rendermonkey作為shader開發利器而為人所熟知,我們可以專心於shader的編寫...